...
When using SetUrl to retrieve content from local storage, you do not need to specify the full file path: SetUrl("file:/example.html")
. If the content is located somewhere other than the current storage device, you can specify it within the string itself. For example, you can use the following syntax to retrieve content from a storage device inserted into the USB port when the current device is an SD card: SetUrl("file:///USB1:/example.html")
.
AddHeader(name As String, value As String) As Boolean
Adds the specified HTTP header. This is only valid for HTTP URLs. This function returns False on failure. Use GetFailureReason()
to to learn the reason for the failure.
...
Connects to the remote service as specified in the URL and returns the response body as a string. This function cannot return until the exchange is complete, and it may block for a long time. Having a single string return means that much of the information (headers, response codes) has been discarded. If you need this information, you can use AsyncGetToString()
instead instead.
Note |
---|
The size of the returned string is limited to 65,536 characters. |
...
Connects to the remote service as specified in the URL and writes the response body to the specified file. This function does not return until the exchange is complete and may block for a long time. The response code from the server is returned. It is not possible to access any of the response headers. If you need this information, use AsyncGetToFile()
instead instead.
AsyncGetToString() As Boolean
...
Specifies the file-creation behavior of the GetToFile()
and and ASyncGetToFile()
methods methods. If this method is set to False (the default setting), each download will generate a temporary file: if the download is successful, the temporary file will be renamed to the specified filename; if the download fails, the temporary file will be deleted. If this method is set to True, the file with the specified filename will be created regardless of whether the download is successful or not—this allows the download to be resumed by a subsequent GetToFile()
or or ASyncGetToFile()
call call.
Head() As Object
Synchronously perform an HTTP HEAD request and return the resulting response code and headers through an roUrlEvent object. In the event of catastrophic failure (e.g. an asynchronous operation is already active), a null object is returned.
...
Causes the transfer to be terminated if the rate drops below bytes_per_second
when when averaged over period_in_seconds
. Note that if the transfer is over the Internet, you may not want to set period_in_seconds
to to a small number in case network problems cause temporary drops in performance. For large file transfers and a small bytes_per_second
limit limit, averaging fifteen minutes or more might be appropriate.
...
Supports basic HTTP authentication against proxies if True (which, unlike EnableUnsafeAuthentication()
, is the default setting). HTTP authentication uses an insecure protocol, which might allow others to easily determine the password. If this methodis False, it will refuse to provide passwords via basic HTTP authentication, and any requests requiring this authentication type will fail.
...
Adds the specified cookie to the player storage and enables the cookie parsing/sending engine. The cookie can be either a single line in Netscape/Mozilla format or a standard HTTP-style header (i.e. Set-Cookie:
). You can also carry out commands by passing these exact strings to the method:
...
Converts the provided string to a URL-encoded string. All characters that could be misinterpreted in a URL context are converted to the %XX
form form.
Unescape(a As String) As String
...
Sets the name or address of the proxy server that will be used by the roUrlTransfer instance. The proxy string should be formatted as follows: "http://user:password@hostname:port". It can contain up to four "*" characters; each "*" character can be used to replace one octet from the current IP address. For example, if the IP address is currently 192.168.1.2, and the proxy is set to "proxy-*-*", then the player will attempt to use a proxy named "proxy-192.168".
...
Exempts the specified hosts from the proxy setting. The passed array should consist of one or more hostnames. The player will attempt to reach the specified hosts directly rather than using the proxy that has been specified with the SetProxy()
method method. For example, the hostname "example.com" would exempt "example.com", "example.com:80", and "www.example.com" from the proxy setting.
...
Uses the HTTP PUT method to write the supplied string to the current URL and return the response code. Any response body is discarded; use roUrlTransfer.SyncMethod to retrieve the response body.
...
SetTimeout(
...
milliseconds As
...
Integer) As Boolean
Places the specified prefix in front of the URL if the URL is relative. Use this method to easily make file:/// URLs drive agnostic.
BindToInterface(interface As Integer) As Boolean
Ensures that the request only goes out over the specified network interface. By default, the request goes out over the most appropriate network interface (which may depend on the routing metric configured via roNetworkConfiguration). Note that if both interfaces are on the same layer 2 network, this method may not always work as expected due to the Linux weak host model. The default behavior can be selected by passing -1 to the method. This method returns False upon failure. In this case, the GetFailureReason() method may provide more information.
SetTimeout(milliseconds As Integer) As Boolean
Terminates the transfer if the request takes longer than the specified number milliseconds. Note that this includes the Terminates the transfer if the request takes longer than the specified number milliseconds. Note that this includes the time taken by any name lookups, so setting this value too low will cause undesirable results. Passing 0 to the method disables the timeout. This method returns True upon success and False upon failure. In the event of failure, using the GetFailureReason()
method method may provide more information. If the operation times out, the status return is -28.
SetUserAgent(a As String) As Boolean
PutFromFile(a As String) As Integer
Uses the HTTP PUT method to write the contents of the specified file to the current URL and return is -28.
...
the response code. Any response body is discarded; use roUrlTransfer.SyncMethod to retrieve the response body.
AsyncPutFromString(a As String) As Boolean
...
PutFromFile(a As String) As Integer
Uses the HTTP PUT method to write the contents of the specified file supplied string to the current URL and return the response code. Events of type roUrlEvent will be sent to the message port associated with the object. A False return indicates that the request could not be issued and no events will be delivered. Any response body is discarded; use roUrlTransfer.SyncMethodAsyncMethod to retrieve the response body.
...
AsyncPutFromFile(a As String) As Boolean
Uses the HTTP PUT method to write the supplied string the contents of the specified file to the current URL. Events of type roUrlEvent will be sent to the message port associated with the object. A False return indicates that the request could not be issued and no events will be deliveredwith the object. A False return indicates that the request could not be issued and no events will be delivered. Any response body is discarded; use roUrlTransfer.AsyncMethod to retrieve the response body.
Delete() As Object
Uses the HTTP DELETE method to delete the resource at the current URL and return the response code. Any response body is discarded; use roUrlTransfer.AsyncMethodSyncMethod to retrieve the response body.
...
AsyncDelete(
...
) As Boolean
Uses the HTTP PUT DELETE method to write the contents of the specified file to delete the resource at the current URL. Events of type roUrlEvent will be sent to the message port associated with the object. A False return indicates that the request could not be issued and no events will be delivered. Any response body is discarded; use roUrlTransfer.AsyncMethod to retrieve the response body.
Delete() As Object
Uses the HTTP DELETE method to delete the resource at the current URL and return the response code. Any response body is discarded; use roUrlTransfer.SyncMethod to retrieve the response body.
AsyncDelete() As Boolean
Uses the HTTP DELETE method to delete the resource at the current URL. Events of type roUrlEvent will be sent to the message port associated with the object. A False return indicates that the request could not be issued and no events will be delivered. Any response body is discarded; use roUrlTransfer.AsyncMethod to retrieve the response body.
ClearHeaders() As Void
Removes all headers that would be supplied with an HTTP request.
AddHeaders(a As Object) As Boolean
Adds one or more headers to HTTP requests. Pass headers to this object as an roAssociativeArray of name/value pairs. This method returns True upon success and False upon failure. All headers that are added with this method will continue to be sent with HTTP requests until ClearHeaders()is called.
SyncMethod(a As Object) As Object
Performs a synchronous HTTP method request using the specified parameters. If the request is started successfully, then the method returns an roUrlEvent object containing the results of the request. This method returns Invalid if the the request could not be started.AsyncMethod to retrieve the response body.
ClearHeaders() As Void
Removes all headers that would be supplied with an HTTP request.
AddHeaders(a As Object) As Boolean
Adds one or more headers to HTTP requests. Pass headers to this object as an roAssociativeArray of name/value pairs. This method returns True upon success and False upon failure. All headers that are added with this method will continue to be sent with HTTP requests until ClearHeaders()is called.
SyncMethod(a As Object) As Object
Performs a synchronous HTTP method request using the specified parameters. If the request is started successfully, then the method returns an roUrlEvent object containing the results of the request. This method returns Invalid if the the request could not be started. In this case, the GetFailureReason()
method may provide more information.
SetRelativeLinkPrefix(prefix As String) As Boolean
Places the specified prefix in front of the URL if the URL is relative. Use this method to easily make file:///
URLs drive agnostic.
BindToInterface(interface As Integer) As Boolean
Ensures that the request only goes out over the specified network interface. By default, the request goes out over the most appropriate network interface (which may depend on the routing metric configured via roNetworkConfiguration). Note that if both interfaces are on the same layer 2 network, this method may not always work as expected due to the Linux weak host model. The default behavior can be selected by passing -1 to the method. This method returns False upon failure. In this case, the GetFailureReason()
method method may provide more information.
...
Name | Type | Description |
method | String | An HTTP method. Normal values include "HEAD", "GET", "POST", "PUT", and "DELETE". Other values are supported; however, depending on server behavior, they may not work as expected. |
request_body_string | String | A string containing the request body. |
request_body_file | String | The name of a file that contains the request body |
response_body_string | Boolean | If specified and set to True, the response will be stored in a string and provided via the roUrlEvent.GetString() method. |
response_body_file | String | The name of the file that will contain the response body. The body is written to a temporary file and then renamed to the specified filename if successful. |
response_body_resume_file | String | The name of the file that will contain the response body. For a GET request, a RANGE header is sent based on the current size of the file, which is written in place rather than using a temporary file. |
response_body_object | String | Uses the response body to create an object of the specified type. See the entry for AsyncGetToObject() for supported object types. |
response_pipe | roArray | Use a pipeline of handlers to process the response body as it is received. See below for more details. |
...
Name | Type | Description |
hash | String | Calculate a hash (digest) of the data using the specified algorithm as it passes through the pipeline. Supported hashes include the following: "CRC32", "MD5", "SHA1", "SHA256", "SHA384", "SHA512". The resulting hash can be retrieved as a hexadecimal string using the roUrlEvent.GetHash() method. |
decompress | String | Decompress the response body using the specified algorithm. Currently, the only supported algorithm is “gzip”. It is often easier to use an HTTP Content-Encoding rather than explicitly decompressing the body. |
prefix_capture | Integer | Capture the specified number of bytes (between 1 and 16384) from the start of the stream and store them separately. The bytes can be retrieved using the roUrlEvent.GetPrefix() method, but they cannot be passed on to subsequent filters. |
output file | String | Output the pipeline to the specified file. The output is written to a temporary file and then renamed to the specified filename if successful. |
output_string | Boolean | If specified and set to True, the response will be stored in a string and provided via the roUrlEvent.GetString() method. |
The following example code specifies an array of handlers to filter the response body of an HTTP request.
...