Package cherrypy :: Module _cpwsgi :: Class AppResponse
[hide private]
[frames] | no frames]

Class AppResponse

source code

object --+
         |
        AppResponse

Instance Methods [hide private]
 
__init__(self, environ, start_response, cpapp, recursive=False)
x.__init__(...) initializes x; see help(type(x)) for signature
source code
 
setapp(self) source code
 
iredirect(self, path, query_string)
Doctor self.environ and perform an internal redirect.
source code
 
__iter__(self) source code
 
next(self) source code
 
close(self)
Close and de-reference the current request and response.
source code
 
get_response(self)
Run self.request and return its response.
source code
 
get_request(self)
Create a Request object using environ.
source code
 
translate_headers(self, environ)
Translate CGI-environ header names to HTTP header names.
source code

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]
  throws = (<type 'exceptions.KeyboardInterrupt'>, <type 'except...
  request = None
hash(x)
  headerNames = {'CONTENT_LENGTH': 'Content-Length', 'CONTENT_TY...
Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, environ, start_response, cpapp, recursive=False)
(Constructor)

source code 

x.__init__(...) initializes x; see help(type(x)) for signature

Overrides: object.__init__
(inherited documentation)

iredirect(self, path, query_string)

source code 

Doctor self.environ and perform an internal redirect.

When cherrypy.InternalRedirect is raised, this method is called. It rewrites the WSGI environ using the new path and query_string, and calls a new CherryPy Request object. Because the wsgi.input stream may have already been consumed by the next application, the redirected call will always be of HTTP method "GET"; therefore, any params must be passed in the query_string argument, which is formed from InternalRedirect.query_string when using that exception. If you need something more complicated, make and raise your own exception and write your own AppResponse subclass to trap it. ;)

It would be a bad idea to redirect after you've already yielded response content, although an enterprising soul could choose to abuse this.

close(self)

source code 

Close and de-reference the current request and response. (Core)


Class Variable Details [hide private]

throws

Value:
(<type 'exceptions.KeyboardInterrupt'>,
 <type 'exceptions.SystemExit'>)

headerNames

Value:
{'CONTENT_LENGTH': 'Content-Length',
 'CONTENT_TYPE': 'Content-Type',
 'HTTP_CGI_AUTHORIZATION': 'Authorization',
 'REMOTE_ADDR': 'Remote-Addr',
 'REMOTE_HOST': 'Remote-Host'}