Close #109 修正302重定向在Firefox浏览器下跳转缓慢的问题

* Firefox要求302应答体必须包含Content-Length,否则无法正确处理消息体
* 增加302应答的Content-Length字段,填为0.
This commit is contained in:
luqiuwen
2019-01-10 15:48:22 +06:00
parent d986d8a8cc
commit f01fd2adc7
2 changed files with 2 additions and 1 deletions

View File

@@ -1002,6 +1002,7 @@ static void http_redirect(const struct tfe_http_session * session, enum tfe_http
response = tfe_http_session_response_create(to_write, resp_code);
tfe_http_std_field_write(response, TFE_HTTP_LOCATION, url);
tfe_http_std_field_write(response, TFE_HTTP_CONT_LENGTH, "0");
tfe_http_half_append_body(response, NULL, 0, 0);
tfe_http_session_response_set(to_write, response);

View File

@@ -1090,7 +1090,7 @@ void hf_private_construct(struct http_half_private * hf_private)
hf_content_compress_write(hf_private->cv_compress_object, NULL, 0, hf_private->evbuf_body, 1);
}
if (hf_private->content_encoding != HTTP_ACCEPT_ENCODING_NONE)
if (hf_private->evbuf_body && hf_private->content_encoding != HTTP_ACCEPT_ENCODING_NONE)
{
const char * __str_content_encoding = __hf_content_encoding_to_str(hf_private->content_encoding);
const static struct http_field_name __cont_encoding_type_name = {TFE_HTTP_CONT_ENCODING, NULL};