summaryrefslogtreecommitdiff
path: root/doc/classes/HTTPRequest.xml
blob: 7c3747929572cd8a55c846f0c324e1254ee09855 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<?xml version="1.0" encoding="UTF-8" ?>
<class name="HTTPRequest" inherits="Node" category="Core" version="3.0-beta">
	<brief_description>
		A Node with the ability to send HTTP requests.
	</brief_description>
	<description>
		A Node with the ability to send HTTP requests. Uses a [HTTPClient] internally, supports HTTPS.
		Can be used to make HTTP requests or download files via HTTP.
	</description>
	<tutorials>
	</tutorials>
	<demos>
	</demos>
	<methods>
		<method name="cancel_request">
			<return type="void">
			</return>
			<description>
				Cancel the current request.
			</description>
		</method>
		<method name="get_body_size" qualifiers="const">
			<return type="int">
			</return>
			<description>
				Return the response body length.
			</description>
		</method>
		<method name="get_download_file" qualifiers="const">
			<return type="String">
			</return>
			<description>
				Return the file this request will download into.
			</description>
		</method>
		<method name="get_downloaded_bytes" qualifiers="const">
			<return type="int">
			</return>
			<description>
				Return the amount of bytes this HTTPRequest downloaded.
			</description>
		</method>
		<method name="get_http_client_status" qualifiers="const">
			<return type="int" enum="HTTPClient.Status">
			</return>
			<description>
				Return the current status of the underlying [HTTPClient].
			</description>
		</method>
		<method name="request">
			<return type="int" enum="Error">
			</return>
			<argument index="0" name="url" type="String">
			</argument>
			<argument index="1" name="custom_headers" type="PoolStringArray" default="PoolStringArray(  )">
			</argument>
			<argument index="2" name="ssl_validate_domain" type="bool" default="true">
			</argument>
			<argument index="3" name="method" type="int" enum="HTTPClient.Method" default="0">
			</argument>
			<argument index="4" name="request_data" type="String" default="&quot;&quot;">
			</argument>
			<description>
			</description>
		</method>
		<method name="set_download_file">
			<return type="void">
			</return>
			<argument index="0" name="path" type="String">
			</argument>
			<description>
				Set the file to download into. Outputs the response body into the file.
			</description>
		</method>
	</methods>
	<members>
		<member name="body_size_limit" type="int" setter="set_body_size_limit" getter="get_body_size_limit">
		</member>
		<member name="max_redirects" type="int" setter="set_max_redirects" getter="get_max_redirects">
		</member>
		<member name="use_threads" type="bool" setter="set_use_threads" getter="is_using_threads">
		</member>
	</members>
	<signals>
		<signal name="request_completed">
			<argument index="0" name="result" type="int">
			</argument>
			<argument index="1" name="response_code" type="int">
			</argument>
			<argument index="2" name="headers" type="PoolStringArray">
			</argument>
			<argument index="3" name="body" type="PoolByteArray">
			</argument>
			<description>
				This signal is emitted upon request completion.
			</description>
		</signal>
	</signals>
	<constants>
		<constant name="RESULT_SUCCESS" value="0" enum="Result">
			Request successful.
		</constant>
		<constant name="RESULT_CHUNKED_BODY_SIZE_MISMATCH" value="1" enum="Result">
		</constant>
		<constant name="RESULT_CANT_CONNECT" value="2" enum="Result">
			Request failed while connecting.
		</constant>
		<constant name="RESULT_CANT_RESOLVE" value="3" enum="Result">
			Request failed while resolving.
		</constant>
		<constant name="RESULT_CONNECTION_ERROR" value="4" enum="Result">
			Request failed due to connection(read/write) error.
		</constant>
		<constant name="RESULT_SSL_HANDSHAKE_ERROR" value="5" enum="Result">
			Request failed on SSL handshake.
		</constant>
		<constant name="RESULT_NO_RESPONSE" value="6" enum="Result">
			Request does not have a response(yet).
		</constant>
		<constant name="RESULT_BODY_SIZE_LIMIT_EXCEEDED" value="7" enum="Result">
			Request exceeded its maximum size limit, see [method set_body_size_limit].
		</constant>
		<constant name="RESULT_REQUEST_FAILED" value="8" enum="Result">
			Request failed. (unused)
		</constant>
		<constant name="RESULT_DOWNLOAD_FILE_CANT_OPEN" value="9" enum="Result">
			HTTPRequest couldn't open the download file.
		</constant>
		<constant name="RESULT_DOWNLOAD_FILE_WRITE_ERROR" value="10" enum="Result">
			HTTPRequest couldn't write to the download file.
		</constant>
		<constant name="RESULT_REDIRECT_LIMIT_REACHED" value="11" enum="Result">
			Request reached its maximum redirect limit, see [method set_max_redirects].
		</constant>
	</constants>
</class>