Drop body for HEAD requests last
This commit is contained in:
		| @@ -117,6 +117,8 @@ class Application(ApplicationPartDelete, ApplicationPartHead, | ||||
|                 headers = [*raw_headers, ("Content-Length", str(len(answer)))] | ||||
|                 answers = [answer] | ||||
|             start_response(status_text, headers) | ||||
|         if environ.get("REQUEST_METHOD") == "HEAD": | ||||
|             return [] | ||||
|         return answers | ||||
|  | ||||
|     def _handle_request(self, environ: types.WSGIEnviron | ||||
| @@ -148,8 +150,7 @@ class Application(ApplicationPartDelete, ApplicationPartHead, | ||||
|                     headers["Content-Encoding"] = "gzip" | ||||
|  | ||||
|                 headers["Content-Length"] = str(len(answer)) | ||||
|                 if request_method != "HEAD": | ||||
|                     answers.append(answer) | ||||
|                 answers.append(answer) | ||||
|  | ||||
|             # Add extra headers set in configuration | ||||
|             headers.update(self._extra_headers) | ||||
|   | ||||
| @@ -27,5 +27,5 @@ class ApplicationPartHead(ApplicationPartGet, ApplicationBase): | ||||
|     def do_HEAD(self, environ: types.WSGIEnviron, base_prefix: str, path: str, | ||||
|                 user: str) -> types.WSGIResponse: | ||||
|         """Manage HEAD request.""" | ||||
|         # Body is dropped in `Application._handle_request` for HEAD requests | ||||
|         # Body is dropped in `Application.__call__` for HEAD requests | ||||
|         return self.do_GET(environ, base_prefix, path, user) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Unrud
					Unrud