Merge pull request #33640 from mewin/http_head_request

Fix HTTP HEAD requests
This commit is contained in:
Fabio Alessandrelli 2019-12-01 05:50:33 +01:00 committed by GitHub
commit 6f38aeef52
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 0 deletions

View file

@ -173,6 +173,7 @@ Error HTTPClient::request_raw(Method p_method, const String &p_url, const Vector
}
status = STATUS_REQUESTING;
head_request = p_method == METHOD_HEAD;
return OK;
}
@ -228,6 +229,7 @@ Error HTTPClient::request(Method p_method, const String &p_url, const Vector<Str
}
status = STATUS_REQUESTING;
head_request = p_method == METHOD_HEAD;
return OK;
}
@ -269,6 +271,7 @@ void HTTPClient::close() {
connection.unref();
status = STATUS_DISCONNECTED;
head_request = false;
if (resolving != IP::RESOLVER_INVALID_ID) {
IP::get_singleton()->erase_resolve_item(resolving);
@ -470,6 +473,12 @@ Error HTTPClient::poll() {
}
}
// This is a HEAD request, we wont receive anything.
if (head_request) {
body_size = 0;
body_left = 0;
}
if (body_size != -1 || chunked) {
status = STATUS_BODY;
@ -724,6 +733,7 @@ HTTPClient::HTTPClient() {
tcp_connection.instance();
resolving = IP::RESOLVER_INVALID_ID;
status = STATUS_DISCONNECTED;
head_request = false;
conn_port = -1;
body_size = -1;
chunked = false;

View file

@ -166,6 +166,7 @@ private:
bool ssl_verify_host;
bool blocking;
bool handshaking;
bool head_request;
Vector<uint8_t> response_str;