|
|
@@ -258,6 +258,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;
|
|
|
}
|
|
|
|