URL - Maple Programming Help

# Online Help

###### All Products    Maple    MapleSim

URL

 Post
 post data to a specified URL

 Calling Sequence Post( url, formdata, options )

Parameters

 url - a string specifying the destination URL for the content formdata - a string, list or an Array of data type integer[1] specifying the data to be sent

Options

 • cafile=string
 specify a certificate file to use when authenticating the server. Maple includes a certificate file containing certificates for the major Certificate Authorities.
 • mode=one of text, binary, or auto
 Specifies whether the reply data should be treated as a string (mode=text) or as an Array with data type integer[1] (mode=binary). When mode=auto, the data type is determined by relying on the data type provided by the server. The default is auto. This is only supported by the http and https schemes. ftp transfers are always treated as binary.
 • output=list or one of content, headers, or code
 a list of one or more of content, headers, and code, or one of the symbols content, headers, or code. This determines what will be returned by Post. The output will be an expression sequence with the corresponding values. The default is content. This option is only valid with http and https schemes.
 • password=string
 Specify the password for authentication. This supersedes any password included in url directly.
 • proxy=string
 a URL for a proxy server. This should include the protocol, host, and port number (if not default), For example, to connect to an HTTP proxy myproxy on port 3421, use proxy=http://myproxy:3421.
 • proxypassword=string
 password to use for authentication against the proxy specified by the proxy option.
 • proxyuser=string
 username to use for authentication against the proxy specified by the proxy option.
 • requestheaders=list(string) or table
 a list of strings and equations of strings that will be added to the http header that is sent as part of the request.
 • responseheaders=list(string)
 a list of strings specifying header fields to be returned. This only has an effect if headers is specified in the output option. If this option is not given, all received headers will be returned.
 • timeout=posint
 the number of seconds to wait before aborting the transfer. The default is infinity (in other words, no timeout).
 • user=string
 Specify the user name for authentication. This supersedes any user name included in url directly.
 • verify=truefalse
 Specifies whether Maple should authenticate the identity of the server by verifying its SSL certificate against a list of verified Certificate Authorities. The default is true. This option is only valid when using https.

Description

 • The Post method sends the data specified in formdata to the URL specified in url.
 • Post supports three URL schemes: http, https and ftp. Not all options to Put are valid for all URL schemes.
 For http and https, Put sends the specified data to url using the HTTP POST method.
 For ftp, the behavior of Post is identical to Put.
 • The input formdata can be a string or Array with datatype integer[1], or a list in which each element represents a form variable assignment.
 • The requestheaders option can be used to specify HTTP header values for the outgoing post data. This can be used to set the Content-Type for the data.
 • The output option is a list of one or more of content, headers, and code.
 content is the content returned by the URL. You can also specify content=string where the string is a filename to which the data will be written.
 headers refers to the http (and https) header received from the server. It is not supported for URLs with the ftp scheme. It is returned as a table of strings.
 code refers to the http (and https) status code returned by the server. It is not supported for URLs with the ftp scheme. It is returned as an integer.

Examples

 > $\mathrm{status},\mathrm{data},\mathrm{headers}≔\mathrm{URL}:-\mathrm{Post}\left("https://www.ssa.gov/cgi-bin/popularnames.cgi","year=1990&top=20&number=n",\mathrm{timeout}=100,\mathrm{output}=\left[\mathrm{code},\mathrm{content},\mathrm{headers}\right]\right):$
 > $\mathrm{type}\left(\mathrm{data},\mathrm{string}\right)$
 ${\mathrm{true}}$ (1)
 > $\mathrm{data}\left[1..6\right]$
 ${""}$ (2)
 > $\mathrm{type}\left(\mathrm{headers},\mathrm{table}\right)$
 ${\mathrm{true}}$ (3)
 > $\mathrm{indices}\left(\mathrm{headers},\mathrm{nolist}\right)$
 ${"Content-type"}{,}{"Server"}{,}{"Transfer-encoding"}{,}{"Cache-control"}{,}{"Date"}$ (4)
 > $\mathrm{headers}\left["Content-type"\right]$
 ${"text/html"}$ (5)
 References

Compatibility

 • The URL[Post] command was introduced in Maple 18.
 • For more information on Maple 18 changes, see Updates in Maple 18.

 See Also