httpPost

Version 22.0.8473


httpPost

Version 22.0.8473


Post data to a URL using the HTTP POST method.

Required Parameters

  • url: The destination URL.

Optional Parameters

  • timeout: The timeout, in seconds, for the operation to complete. Zero (0) means no timeout. The default value is ‘60’.
  • proxy_server: The IP address or host name of the proxy server used for the request.
  • proxy_auto: Whether or not the proxy should be detected from Windows system settings. This takes precedence over other proxy settings and is not available in Java. The allowed values are ‘TRUE, FALSE’. The default value is ‘FALSE’.
  • proxy_port: The port number of the proxy server.
  • proxy_user: The user Id used to authenticate with the proxy server.
  • proxy_password: The password used to authenticate with the proxy server.
  • proxy_authscheme: The authentication scheme of the proxy server. The allowed values are ‘BASIC, DIGEST, PROPRIETARY, NONE, NTLM’. The default value is ‘BASIC’.
  • proxy_authtoken: The proxy authentication token.
  • proxy_ssltype: The SSL/TLS type of the proxy server. The allowed values are ‘AUTO, ALWAYS, NEVER, TUNNEL’. The default value is ‘AUTO’.
  • firewall_server: The IP address or host name of the firewall.
  • firewall_port: The port number of the firewall.
  • firewall_user: The user Id used to authenticate with the firewall.
  • firewall_password: The password used to authenticate with the firewall.
  • firewall_type: The type of the firewall. The allowed values are ‘NONE, TUNNEL, SOCKS4, SOCKS5’. The default value is ‘NONE’.
  • kerberoskdc: The KDC setting of Kerberos, available when authscheme is Negotiate.
  • kerberosrealm: The Realm setting of Kerberos, available when authscheme is Negotiate.
  • internalconfig#: Sets an internal configuration setting.
  • charset: The charset of the exchanged/transferred data. The default value is ‘UTF-8’.
  • httpversion: Version of the HTTP protocol to use. The allowed values are ‘1.0, 1.1’. The default value is ‘1.1’.
  • cookie:*: Any cookies to add to the request.
  • followredirects: Whether or not to follow HTTP redirects. The allowed values are ‘TRUE, FALSE’. The default value is ‘TRUE’.
  • sslcert: The SSL/TLS certificate to be accepted from the server. This can take the form of a full PEM certificate, the path to a file containing the certificate, the public key, the MD5 thumbprint, or the SHA-1 thumbprint. Any certificate other than the one specified will be rejected. If unspecified, this value defaults to ‘TRUSTED’, which means only certificates that are trusted by the system will be accepted. If set to *, any certificate will be accepted whether it is trusted by the system or not.
  • sslclientcert: The name of the certificate store for the client certificate.
  • sslclientcerttype: The store type of the client certificate. The allowed values are ‘USER, MACHINE, PFXFILE, PFXBLOB, JKSFILE, JKSBLOB, PEMKEY_FILE, PEMKEY_BLOB, PUBLIC_KEY_FILE, PUBLIC_KEY_BLOB, SSHPUBLIC_KEY_BLOB, P7BFILE, P7BBLOB, SSHPUBLIC_KEY_FILE, PPKFILE, PPKBLOB, XMLFILE, XMLBLOB’.
  • sslclientcertpassword: The password of the client certificate.
  • sslclientcertsubject: The subject of the client certificate. Using an asterisk will find the first certificate in the store.
  • user: The username to authenticate with if the authscheme parameter is set to something other than None.
  • password: The password to authenticate with if the authscheme parameter is set to something other than None.
  • authscheme: The authorization mechanism to use. Only relevant if user and password are provided. Valid values are BASIC, DIGEST, and NTLM. Defaults to BASIC. The allowed values are ‘BASIC, DIGEST, NTLM’. The default value is ‘BASIC’.
  • version: The OAuth version. Use OAuth to authorize the request. Default is Disabled. The allowed values are ‘Disabled, 1.0, 2.0’. The default value is ‘Disabled’.
  • token: The request token for OAuth.
  • token_secret: The request token secret. OAuth 1.0 only.
  • sign_method: The signature method used to calculate the signature for OAuth 1.0. The allowed values are ‘HMAC-SHA1, PLAINTEXT’. The default value is ‘HMAC-SHA1’.
  • client_id: The client Id. OAuth 1.0 only.
  • client_secret: The client secret. OAuth 1.0 only.
  • header:name#: The name for each custom header to pass with the request.
  • header:value#: The value for each custom header to pass with the request.
  • paramname#: The name for each parameter to pass with the request.
  • paramvalue#: The value for each parameter to pass with the request.
  • formencoding: When passing parameters via paramname# and paramvalue#, the type of encoding to use; accepted values are ‘URLENCODED’ and ‘FORMDATA’, and the default is ‘URLENCODED’.
  • postdata: Data to include in the POST. Use file:// followed by a file path to post the contents of a file.
  • contenttype: The content type for the POST. The default value is ‘application/x-www-form-urlencoded’.
  • logfile: The full path to a file to log request and response data. Must be used in conjunction with verbosity.
  • verbosity: The verbosity of the log file, from 1 (least verbose) to 5 (most verbose).

Output Attributes

  • ssl:issuer: The issuer of the SSL/TLS certificate.
  • ssl:subject: The subject of the SSL/TLS certificate.
  • http:statuscode: The HTTP status code returned from the request.
  • http:content: The content of the HTTP response.
  • cookie:*: The cookies returned with the response.
  • http:allcookies: All of the cookies from the response, returned as a single string.
  • header:*: The headers returned with the response.

Example

The ArcScript sample below uses a Script Connector to execute an HTTP POST request:

<arc:set attr="http.URL" value="http://example.com/people" />
<arc:set attr="http.paramname#1" value="name" />
<arc:set attr="http.paramname#2" value="age" />
<arc:set attr="http.paramvalue#1" value="Charlie" />
<arc:set attr="http.paramvalue#2" value="28" />

<arc:call op="httpPost" in="http">
  <arc:set attr="output.data" value="[http:content]" />
</arc:call>

<arc:set attr="output.filename" value="httpContent.txt" />
<arc:push item="output" />

Once executed, the script outputs a file with the contents of the server’s response.