httpGet: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
{{ | {{ScriptItem2 | ||
| | |name = httpGet | ||
|side = server | |||
|type = function | |type = function | ||
| | |games = iii vc sa iv | ||
| | |desc = perform a HTTP transfer asynchronously.<br><br> | ||
If parameter <code>postData</code> is a blank string, then the GET request method is used, otherwise the POST request method is used. | If parameter <code>postData</code> is a blank string, then the GET request method is used, otherwise the POST request method is used. | ||
| | |arg1 = string url The URL to send the HTTP request to. | ||
| | |arg2 = string postData The data to send as the body of the HTTP request. | ||
| | |arg3 = function dataReceivedCallback The scripting function to call when data is read from the connection. This can be called multiple times. | ||
|arg4 = function completedCallback The scripting function to call when data has been entirely read on the connection. | |||
| | |return = void | ||
| | |freturn = void | ||
|note = You can use this function to convert a JavaScript ArrayBuffer to a JavaScript String: | |||
{{CodeSyntax|function ab2str(buf) { | |||
return String.fromCharCode.apply(null, new Uint8Array(buf)); | |||
} }} | |||
|cb3text = This callback function can potentially be called multiple times for the same request. | |||
|cb3arg1 = ArrayBuffer/String receivedData The data received, which could be all of the data or just 1 byte.<br>ArrayBuffer is used in JavaScript, String is used in other scripting languages. | |||
|cb4arg1 = int curlErrorCode The CURL error code. 0 means success. [https://curl.haxx.se/libcurl/c/libcurl-errors.html CURL Error Codes] | |||
|cb4arg2 = int httpResponseCode The HTTP response code. [https://en.wikipedia.org/wiki/List_of_HTTP_status_codes HTTP Response Codes] | |||
|compat1 = In server version 1.1.22 and before, there was an issue where the connection would close after the '''dataReceivedCallback''' callback was called first time and did not return the received data length. | |compat1 = In server version 1.1.22 and before, there was an issue where the connection would close after the '''dataReceivedCallback''' callback was called first time and did not return the received data length. | ||
|compat2 = In server version 1.1.22 and before, there was also an issue where the POST request method was used if the '''postData''' parameter was a blank string. | |compat2 = In server version 1.1.22 and before, there was also an issue where the POST request method was used if the '''postData''' parameter was a blank string. | ||
|compat3 = In previous server versions, the '''dataReceivedCallback''' callback was invoked with a string parameter instead of an ArrayBuffer parameter. | |compat3 = In previous server versions, for the JavaScript scripting language, the '''dataReceivedCallback''' callback was invoked with a string parameter instead of an ArrayBuffer parameter. | ||
}} | }} |
Latest revision as of 20:36, 19 November 2022
Function
Server Only
Online and Offline
Available since Server 1.0.0
void httpGet(string url, string postData, function dataReceivedCallback, function completedCallback)
The httpGet function is used to perform a HTTP transfer asynchronously.
postData
is a blank string, then the GET request method is used, otherwise the POST request method is used.Parameters
1) | string | url | The URL to send the HTTP request to. |
2) | string | postData | The data to send as the body of the HTTP request. |
3) | function | dataReceivedCallback | The scripting function to call when data is read from the connection. This can be called multiple times. |
4) | function | completedCallback | The scripting function to call when data has been entirely read on the connection. |
Return
void | This function doesn't return a value. |
Callbacks
function dataReceivedCallback(ArrayBuffer/String receivedData)
1) | ArrayBuffer/String | receivedData | The data received, which could be all of the data or just 1 byte. ArrayBuffer is used in JavaScript, String is used in other scripting languages. |
function completedCallback(int curlErrorCode, int httpResponseCode)
1) | int | curlErrorCode | The CURL error code. 0 means success. CURL Error Codes. |
2) | int | httpResponseCode | The HTTP response code. HTTP Response Codes. |
Notes
- You can use this function to convert a JavaScript ArrayBuffer to a JavaScript String:
function ab2str(buf) {
return String.fromCharCode.apply(null, new Uint8Array(buf));
}
.
Examples
There aren't any examples for this function.
Compatibility
- In server version 1.1.22 and before, there was an issue where the connection would close after the dataReceivedCallback callback was called first time and did not return the received data length.
- In server version 1.1.22 and before, there was also an issue where the POST request method was used if the postData parameter was a blank string.
- In previous server versions, for the JavaScript scripting language, the dataReceivedCallback callback was invoked with a string parameter instead of an ArrayBuffer parameter.
Related
Server Related
httpGet