diff options
author | Hugo Locurcio <hugo.locurcio@hugo.pro> | 2019-12-24 23:20:27 +0100 |
---|---|---|
committer | Hugo Locurcio <hugo.locurcio@hugo.pro> | 2019-12-24 23:24:16 +0100 |
commit | c719cea11675e099058c6e05cc0a1b4c3ebfec76 (patch) | |
tree | 69b53ebaacc858b2284d2ca404345e07ce6f15de | |
parent | d711c57d767734887fbf0955a7b9902c54498a0d (diff) |
Add an example of using HTTPRequest to contact a REST API
We already had an example to download and display an image,
but having another example dedicated to REST APIs doesn't hurt.
-rw-r--r-- | doc/classes/HTTPRequest.xml | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/classes/HTTPRequest.xml b/doc/classes/HTTPRequest.xml index 2fed423a32..748ed504c3 100644 --- a/doc/classes/HTTPRequest.xml +++ b/doc/classes/HTTPRequest.xml @@ -6,6 +6,27 @@ <description> A node with the ability to send HTTP requests. Uses [HTTPClient] internally. Can be used to make HTTP requests, i.e. download or upload files or web content via HTTP. + [b]Example of contacting a REST API and printing one of its returned fields:[/b] + [codeblock] + func _ready(): + # Create an HTTP request node and connect its completion signal. + var http_request = HTTPRequest.new() + add_child(http_request) + http_request.connect("request_completed", self, "_http_request_completed") + + # Perform the HTTP request. The URL below returns some JSON as of writing. + var error = http_request.request("https://httpbin.org/get") + if error != OK: + push_error("An error occurred in the HTTP request.") + + + # Called when the HTTP request is completed. + func _http_request_completed(result, response_code, headers, body): + var response = parse_json(body.get_string_from_utf8()) + + # Will print the user agent string used by the HTTPRequest node (as recognized by httpbin.org). + print(response.headers["User-Agent"]) + [/codeblock] [b]Example of loading and displaying an image using HTTPRequest:[/b] [codeblock] func _ready(): |