New submission from Yoav Weiss <[email protected]>:
I'm using BaseHTTPServer's send_response (from within a class that inherits
BaseHTTPRequestHandler) with the following:
self.send_response(response.code, response.headers)
self.end_headers()
self.wfile.write(content)
self.wfile.flush()
When response is a httplib's HTTPResponse object, and its headers inherits from
rfc822.Message.
What I see is that message is printed as is, including all the headers trailing
"\r\n", after which the send_response method (BaseHTTPServer.py:381) adds
another "\r\n".
Then send_response adds the "Server" and "Date" headers.
Since the headers before Server & Date include "\r\n\r\n", Date & server are
considered by the browser as the content.
Am I misusing BaseHTTPServer? If not, this is a bug and "\r\n" should be
removed from line 381, or added only after a check that shows they are not
already there at the headers end, or in case there are no input headers.
----------
components: Library (Lib)
messages: 139401
nosy: Yoav.Weiss
priority: normal
severity: normal
status: open
title: BaseHTTPServer's send_reponse adds extra "\r\n" when using HTTPMessage
in input
type: behavior
versions: Python 2.6
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue12439>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com