class_httprequest.rst 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  2. .. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead.
  3. .. _class_HTTPRequest:
  4. HTTPRequest
  5. ===========
  6. **Inherits:** :ref:`Node<class_node>` **<** :ref:`Object<class_object>`
  7. **Category:** Core
  8. Brief Description
  9. -----------------
  10. A Node with the ability to send HTTP requests.
  11. Member Functions
  12. ----------------
  13. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  14. | void | :ref:`cancel_request<class_HTTPRequest_cancel_request>` **(** **)** |
  15. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  16. | :ref:`int<class_int>` | :ref:`get_body_size<class_HTTPRequest_get_body_size>` **(** **)** const |
  17. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  18. | :ref:`int<class_int>` | :ref:`get_body_size_limit<class_HTTPRequest_get_body_size_limit>` **(** **)** const |
  19. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  20. | :ref:`String<class_string>` | :ref:`get_download_file<class_HTTPRequest_get_download_file>` **(** **)** const |
  21. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  22. | :ref:`int<class_int>` | :ref:`get_downloaded_bytes<class_HTTPRequest_get_downloaded_bytes>` **(** **)** const |
  23. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  24. | :ref:`int<class_int>` | :ref:`get_http_client_status<class_HTTPRequest_get_http_client_status>` **(** **)** const |
  25. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  26. | :ref:`int<class_int>` | :ref:`get_max_redirects<class_HTTPRequest_get_max_redirects>` **(** **)** const |
  27. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  28. | :ref:`bool<class_bool>` | :ref:`is_using_threads<class_HTTPRequest_is_using_threads>` **(** **)** const |
  29. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  30. | :ref:`int<class_int>` | :ref:`request<class_HTTPRequest_request>` **(** :ref:`String<class_string>` url, :ref:`StringArray<class_stringarray>` custom_headers=StringArray([]), :ref:`bool<class_bool>` ssl_validate_domain=true, :ref:`int<class_int>` method=0, :ref:`String<class_string>` request_data="" **)** |
  31. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  32. | void | :ref:`set_body_size_limit<class_HTTPRequest_set_body_size_limit>` **(** :ref:`int<class_int>` bytes **)** |
  33. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  34. | void | :ref:`set_download_file<class_HTTPRequest_set_download_file>` **(** :ref:`String<class_string>` path **)** |
  35. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | void | :ref:`set_max_redirects<class_HTTPRequest_set_max_redirects>` **(** :ref:`int<class_int>` amount **)** |
  37. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. | void | :ref:`set_use_threads<class_HTTPRequest_set_use_threads>` **(** :ref:`bool<class_bool>` enable **)** |
  39. +------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  40. Signals
  41. -------
  42. - **request_completed** **(** :ref:`int<class_int>` result, :ref:`int<class_int>` response_code, :ref:`StringArray<class_stringarray>` headers, :ref:`RawArray<class_rawarray>` body **)**
  43. This signal is emitted upon request completion.
  44. Numeric Constants
  45. -----------------
  46. - **RESULT_SUCCESS** = **0** --- Request successful.
  47. - **RESULT_CHUNKED_BODY_SIZE_MISMATCH** = **1**
  48. - **RESULT_CANT_CONNECT** = **2** --- Request failed while connecting.
  49. - **RESULT_CANT_RESOLVE** = **3** --- Request failed while resolving.
  50. - **RESULT_CONNECTION_ERROR** = **4** --- Request failed due to connection(read/write) error.
  51. - **RESULT_SSL_HANDSHAKE_ERROR** = **5** --- Request failed on SSL handshake.
  52. - **RESULT_NO_RESPONSE** = **6** --- Request does not have a response(yet).
  53. - **RESULT_BODY_SIZE_LIMIT_EXCEEDED** = **7** --- Request exceded its maximum size limit, see :ref:`set_body_size_limit<class_HTTPRequest_set_body_size_limit>`.
  54. - **RESULT_REQUEST_FAILED** = **8** --- Request failed. (unused)
  55. - **RESULT_DOWNLOAD_FILE_CANT_OPEN** = **9** --- HTTPRequest couldn't open the download file.
  56. - **RESULT_DOWNLOAD_FILE_WRITE_ERROR** = **10** --- HTTPRequest couldn't write to the download file.
  57. - **RESULT_REDIRECT_LIMIT_REACHED** = **11** --- Request reached its maximum redirect limit, see :ref:`set_max_redirects<class_HTTPRequest_set_max_redirects>`.
  58. Description
  59. -----------
  60. A Node with the ability to send HTTP requests. Uses a :ref:`HTTPClient<class_httpclient>` internally, supports HTTPS.
  61. Can be used to make HTTP requests or download files via HTTP.
  62. Member Function Description
  63. ---------------------------
  64. .. _class_HTTPRequest_cancel_request:
  65. - void **cancel_request** **(** **)**
  66. Cancel the current request.
  67. .. _class_HTTPRequest_get_body_size:
  68. - :ref:`int<class_int>` **get_body_size** **(** **)** const
  69. Return the response body length.
  70. .. _class_HTTPRequest_get_body_size_limit:
  71. - :ref:`int<class_int>` **get_body_size_limit** **(** **)** const
  72. Return current body size limit.
  73. .. _class_HTTPRequest_get_download_file:
  74. - :ref:`String<class_string>` **get_download_file** **(** **)** const
  75. Return the file this request will download into.
  76. .. _class_HTTPRequest_get_downloaded_bytes:
  77. - :ref:`int<class_int>` **get_downloaded_bytes** **(** **)** const
  78. Return the amount of bytes this HTTPRequest downloaded.
  79. .. _class_HTTPRequest_get_http_client_status:
  80. - :ref:`int<class_int>` **get_http_client_status** **(** **)** const
  81. Return the current status of the underlying :ref:`HTTPClient<class_httpclient>`.
  82. .. _class_HTTPRequest_get_max_redirects:
  83. - :ref:`int<class_int>` **get_max_redirects** **(** **)** const
  84. Return the maximum amount of redirects that will be followed.
  85. .. _class_HTTPRequest_is_using_threads:
  86. - :ref:`bool<class_bool>` **is_using_threads** **(** **)** const
  87. Whether this request is using threads.
  88. .. _class_HTTPRequest_request:
  89. - :ref:`int<class_int>` **request** **(** :ref:`String<class_string>` url, :ref:`StringArray<class_stringarray>` custom_headers=StringArray([]), :ref:`bool<class_bool>` ssl_validate_domain=true, :ref:`int<class_int>` method=0, :ref:`String<class_string>` request_data="" **)**
  90. Make a HTTP request (by default GET, unless specified otherwise as method). The url is the complete url including "http://" or "https://" which will be parsed for a host and a port.
  91. The custom_headers are HTTP request headers which will be used. If User-Agent is not specified a Godot specific will be used.
  92. The ssl_validate_domain specifies if in case of HTTPS the server certificate should be verified.
  93. .. _class_HTTPRequest_set_body_size_limit:
  94. - void **set_body_size_limit** **(** :ref:`int<class_int>` bytes **)**
  95. Set the response body size limit.
  96. .. _class_HTTPRequest_set_download_file:
  97. - void **set_download_file** **(** :ref:`String<class_string>` path **)**
  98. Set the file to download into. Outputs the response body into the file.
  99. .. _class_HTTPRequest_set_max_redirects:
  100. - void **set_max_redirects** **(** :ref:`int<class_int>` amount **)**
  101. Set the maximum amount of redirects the request will follow.
  102. .. _class_HTTPRequest_set_use_threads:
  103. - void **set_use_threads** **(** :ref:`bool<class_bool>` enable **)**
  104. Make this HTTPRequest use threads.