start_response not start_request
This commit is contained in:
@@ -136,8 +136,8 @@ class HttpProtocol(BaseHTTPServer.BaseHTTPRequestHandler):
|
|||||||
else:
|
else:
|
||||||
towrite.append(data)
|
towrite.append(data)
|
||||||
_write(''.join(towrite))
|
_write(''.join(towrite))
|
||||||
|
|
||||||
def start_request(status, response_headers, exc_info=None):
|
def start_response(status, response_headers, exc_info=None):
|
||||||
if exc_info:
|
if exc_info:
|
||||||
try:
|
try:
|
||||||
if headers_sent:
|
if headers_sent:
|
||||||
@@ -146,19 +146,17 @@ class HttpProtocol(BaseHTTPServer.BaseHTTPRequestHandler):
|
|||||||
finally:
|
finally:
|
||||||
# Avoid dangling circular ref
|
# Avoid dangling circular ref
|
||||||
exc_info = None
|
exc_info = None
|
||||||
elif headers_set:
|
|
||||||
raise AssertionError("Headers already set!")
|
|
||||||
|
|
||||||
headers_set[:] = [status, response_headers]
|
headers_set[:] = [status, response_headers]
|
||||||
return write
|
return write
|
||||||
|
|
||||||
try:
|
try:
|
||||||
result = self.server.app(self.environ, start_request)
|
result = self.server.app(self.environ, start_response)
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
exc = traceback.format_exc()
|
exc = traceback.format_exc()
|
||||||
print exc
|
print exc
|
||||||
if not headers_set:
|
if not headers_set:
|
||||||
start_request("500 Internal Server Error", [('Content-type', 'text/plain')])
|
start_response("500 Internal Server Error", [('Content-type', 'text/plain')])
|
||||||
write(exc)
|
write(exc)
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -184,7 +182,7 @@ class HttpProtocol(BaseHTTPServer.BaseHTTPRequestHandler):
|
|||||||
exc = traceback.format_exc()
|
exc = traceback.format_exc()
|
||||||
print exc
|
print exc
|
||||||
if not headers_set:
|
if not headers_set:
|
||||||
start_request("500 Internal Server Error", [('Content-type', 'text/plain')])
|
start_response("500 Internal Server Error", [('Content-type', 'text/plain')])
|
||||||
write(exc)
|
write(exc)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user