mirror of
https://github.com/frappe/gunicorn.git
synced 2026-01-14 11:09:11 +08:00
Ensure response to HEAD request won't have message body
Ensure that Gunicorn won't try to use chunked transfer-encoding for responses to a HEAD request, so that `Response.close` will not write a terminating chunk. Responses to a HEAD request MUST NOT have a message-body. The application is still responsible for ensuring no message body is actually generated in response to a HEAD request.
This commit is contained in:
parent
305f373dc6
commit
53329b19cc
@ -230,6 +230,8 @@ class Response(object):
|
||||
return True
|
||||
if self.response_length is not None or self.chunked:
|
||||
return False
|
||||
if self.req.method == 'HEAD':
|
||||
return False
|
||||
if self.status_code < 200 or self.status_code in (204, 304):
|
||||
return False
|
||||
return True
|
||||
@ -287,6 +289,9 @@ class Response(object):
|
||||
return False
|
||||
elif self.req.version <= (1, 0):
|
||||
return False
|
||||
elif self.req.method == 'HEAD':
|
||||
# Responses to a HEAD request MUST NOT contain a response body.
|
||||
return False
|
||||
elif self.status_code in (204, 304):
|
||||
# Do not use chunked responses when the response is guaranteed to
|
||||
# not have a response body.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user