esp_http_client: Fix HEAD request will affect the all next HTTP requests unless we close the HTTP request

Closes https://github.com/espressif/esp-idf/issues/7777
This commit is contained in:
yuanjm 2021-10-28 19:53:12 +08:00
parent a790d96441
commit f2347ff434

View File

@ -248,6 +248,13 @@ static int http_on_headers_complete(http_parser *parser)
client->response->data_process = 0;
ESP_LOGD(TAG, "http_on_headers_complete, status=%d, offset=%d, nread=%d", parser->status_code, client->response->data_offset, parser->nread);
client->state = HTTP_STATE_RES_COMPLETE_HEADER;
if (client->connection_info.method == HTTP_METHOD_HEAD) {
/* In a HTTP_RESPONSE parser returning '1' from on_headers_complete will tell the
parser that it should not expect a body. This is used when receiving a response
to a HEAD request which may contain 'Content-Length' or 'Transfer-Encoding: chunked'
headers that indicate the presence of a body.*/
return 1;
}
return 0;
}