Changeset 391 for python/trunk/Lib/wsgiref/handlers.py
- Timestamp:
- Mar 19, 2014, 11:31:01 PM (11 years ago)
- Location:
- python/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
python/trunk
-
Property svn:mergeinfo
set to
/python/vendor/Python-2.7.6 merged eligible /python/vendor/current merged eligible
-
Property svn:mergeinfo
set to
-
python/trunk/Lib/wsgiref/handlers.py
r2 r391 40 40 41 41 42 43 42 class BaseHandler: 44 43 """Manage the invocation of a WSGI application""" … … 65 64 # Error handling (also per-subclass or per-instance) 66 65 traceback_limit = None # Print entire traceback to self.get_stderr() 67 error_status = "500 Dude, this is whack!"66 error_status = "500 Internal Server Error" 68 67 error_headers = [('Content-Type','text/plain')] 69 68 error_body = "A server error occurred. Please contact the administrator." … … 74 73 headers = None 75 74 bytes_sent = 0 76 77 78 79 80 81 82 83 75 84 76 def run(self, application): … … 131 123 'self.close()' once the response is finished. 132 124 """ 133 if not self.result_is_file() or not self.sendfile(): 134 for data in self.result: 135 self.write(data) 136 self.finish_content() 137 self.close() 125 try: 126 if not self.result_is_file() or not self.sendfile(): 127 for data in self.result: 128 self.write(data) 129 self.finish_content() 130 finally: 131 self.close() 138 132 139 133 … … 161 155 Subclasses can extend this to add other defaults. 162 156 """ 163 if not self.headers.has_key('Content-Length'):157 if 'Content-Length' not in self.headers: 164 158 self.set_content_length() 165 159 … … 196 190 if self.client_is_modern(): 197 191 self._write('HTTP/%s %s\r\n' % (self.http_version,self.status)) 198 if not self.headers.has_key('Date'):192 if 'Date' not in self.headers: 199 193 self._write( 200 194 'Date: %s\r\n' % format_date_time(time.time()) 201 195 ) 202 if self.server_software and not self.headers.has_key('Server'):196 if self.server_software and 'Server' not in self.headers: 203 197 self._write('Server: %s\r\n' % self.server_software) 204 198 else: … … 249 243 """Ensure headers and content have both been sent""" 250 244 if not self.headers_sent: 251 self.headers['Content-Length'] = "0" 245 # Only zero Content-Length if not set by the application (so 246 # that HEAD requests can be satisfied properly, see #3839) 247 self.headers.setdefault('Content-Length', "0") 252 248 self.send_headers() 253 249 else: … … 360 356 361 357 362 363 364 365 366 367 368 369 370 371 358 class SimpleHandler(BaseHandler): 372 359 """Handler that's just initialized with streams, environment, etc. … … 434 421 435 422 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 423 class CGIHandler(BaseCGIHandler): 454 424 … … 479 449 multithread=False, multiprocess=True 480 450 ) 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 #
Note:
See TracChangeset
for help on using the changeset viewer.