Actions
Added in 3.6
$urlget(N/id/url,options,target,alias,headers,body)
Performs a GET/POST request to a http server and returns a unique id to identify the request.
When the request is finished, calls the specified alias with the id as a parameter.
Files downloaded with the 'f' parameter will use the folder matching the file extension from Dcc Get Folders or the default Dcc Get Folder.
Parameters
Parameter | Description |
N | If N = 0, returns the Nth running request, otherwise the Nth running request. |
id | Returns the running request matching the id. |
url | The url to perform the GET/POST request to. |
Options | Url get options. |
target | The target &binvar or filename to save the response. |
alias | The alias to perform when the request is completed. |
headers | &binvar containing addiotional headers separated by $crlf. (optional) |
body | &binvar containing POST data, used with the "p" switch. (optional) |
Options
Option | Description |
g | Perform a GET request. |
p | Perform a POST request. |
f | Save the response to a file. |
b | Save the response to a &binvar. |
r | Resume a failed request/download. |
t | TODO |
c | Cancel a running request. |
k | Disable url/header redirect. |
i | Ignore SSL/TLS certificate errors. |
Properties
Property | Description |
.url | Returns the url used. |
.redirect | Returns the value of the location header if available. |
.method | Returns the method used (GET/POST). |
.type | Returns the type of output, (binvar/file). |
.target | Returns the value of target (name of the binvar or filename). |
.alias | Returns the name of the alias used. |
.id | Returns the unique request id. |
.state | Returns the state (ok, connect, download, fail). |
.size | Returns the value of the Content-Lenght header. |
.resume | Returns the number of bytes to resume from a failed request/download. |
.rcvd | Returns the number of bytes received after the header, could be different from .size after a failed download. |
.time | Returns the time taken to complete the processing, in milliseconds. |
.reply | Returns the response headers. |
Example
; Perform a GET request to adiirc.com and put the result in '&target' binvar. //noop $urlget(https://adiirc.com,gb,&target,callback) ; Or Perform a POST request to adiirc.com and put the result in '&target' binvar. alias posttest { bset -t &header 1 Test: Header bset -t &body 1 foo1=bar1&foo2=bar2 noop $urlget(https://adiirc.com,pb,&target,callback,&header,&body) } ; When a request is finished, print the result. alias callback { echo -ag Response: $bvar($urlget($1).target,1-).text } ; List the number of running requests. //echo -ag $urlget(0) ; List the first running request. //echo -ag $urlget(1) ; Cancel the first running request. //echo -ag $urlget(1, c) ; Download the latest AdiIRC beta. ; Notice the 'target' parameter is left blank so it will use the original filename from the server. ; Also notice the 'alias' parameter is set to /noop to ignore the callback. //noop $urlget(https://adiirc.com/AdiIRC64_45.exe,gf,,/noop)
Updated by Per Amundsen over 1 year ago · 16 revisions