twisted.web.server.Request(Copyable, http.Request, components.Componentized)
class documentationtwisted.web.server
View Source
(View In Hierarchy)
Known subclasses: twisted.web.distrib.Request
Implements interfaces: twisted.web.iweb.IRequest
An HTTP request.
Instance Variable | defaultContentType | A bytes giving the default Content-Type value to send
in responses if no other value is set. None
disables the default. |
Method | __init__ | |
Method | getStateToCopyFor | Gather state to send when I am serialized for a particular perspective. |
Method | sibLink | Return the text that links to a sibling of the requested resource. |
Method | childLink | Return the text that links to a child of the requested resource. |
Method | process | Process a request. |
Method | write | Write data to the transport (if not responding to a HEAD request). |
Method | finish | Override http.Request.finish for possible encoding. |
Method | render | Ask a resource to render itself. |
Method | processingFailed | Finish this request with an indication that processing failed and possibly display a traceback. |
Method | view_write | Remote version of write; same interface. |
Method | view_finish | Remote version of finish; same interface. |
Method | view_addCookie | Remote version of addCookie; same interface. |
Method | view_setHeader | Remote version of setHeader; same interface. |
Method | view_setLastModified | Remote version of setLastModified; same interface. |
Method | view_setETag | Remote version of setETag; same interface. |
Method | view_setResponseCode | Remote version of setResponseCode; same interface. |
Method | view_registerProducer | Remote version of registerProducer; same interface. (requires a remote producer.) |
Method | view_unregisterProducer | Undocumented |
Method | session | No summary |
Method | getSession | Check if there is a session cookie, and if not, create it. |
Method | prePathURL | |
Method | URLPath | |
Method | rememberRootURL | Remember the currently-processed part of the URL for later recalling. |
Method | getRootURL | Get a previously-remembered URL. |
Instance Variable | _insecureSession | The Session
object representing state that will be transmitted over plain-text HTTP. |
Instance Variable | _secureSession | The Session
object representing the state that will be transmitted only over HTTPS. |
Method | _prePathURL | Undocumented |
Method | _handleStar | Handle receiving a request whose path is '*'. |
Inherited from Copyable:
Method | getStateToCopy | Gather state to send when I am serialized for a peer. |
Method | getTypeToCopy | Determine what type tag to send for me. |
Method | getTypeToCopyFor | Determine what type tag to send for me. |
Method | jellyFor | Assemble type tag and state to copy for this broker. |
Inherited from Serializable (via Copyable):
Method | processUniqueID | Return an ID which uniquely represents this object for this process. |
Inherited from Jellyable (via Copyable, Serializable):
Method | getStateFor | Undocumented |
Inherited from Request:
Instance Variable | method | The HTTP method that was used. |
Instance Variable | uri | The full URI that was requested (includes arguments). |
Instance Variable | path | The path only (arguments not included). |
Instance Variable | args | All of the arguments, including URL and POST arguments. (type: A mapping of strings (the argument names) to lists of values. i.e., ?foo=bar&foo=baz&quux=spam results in {'foo': ['bar', 'baz'], 'quux': ['spam']}.) |
Instance Variable | cookies | The cookies that will be sent in the response. (type: list
of bytes ) |
Instance Variable | requestHeaders | All received HTTP request headers. (type: http_headers.Headers ) |
Instance Variable | responseHeaders | All HTTP response headers to be sent. (type: http_headers.Headers ) |
Instance Variable | notifications | A list of Deferred s
which are waiting for notification that the response to this request has
been finished (successfully or with an error). Don't use this attribute
directly, instead use the Request.notifyFinish
method. |
Method | noLongerQueued | Notify the object that it is no longer queued. |
Method | gotLength | Called when HTTP channel got length of content in this request. |
Method | parseCookies | Parse cookie headers. |
Method | handleContentChunk | Write a chunk of data. |
Method | requestReceived | Called by channel when all data has been received. |
Method | __repr__ | Return a string description of the request including such information as the request method and request URI. |
Method | registerProducer | Register a producer. |
Method | unregisterProducer | Unregister the producer. |
Method | getHeader | Get an HTTP request header. |
Method | getCookie | Get a cookie that was sent from the network. |
Method | notifyFinish | Notify when the response to this request has finished. |
Method | addCookie | Set an outgoing HTTP cookie. |
Method | setResponseCode | Set the HTTP response code. |
Method | setHeader | Set an HTTP response header. Overrides any previously set values for this header. |
Method | redirect | Utility function that does a redirect. |
Method | setLastModified | Set the Last-Modified time for the response to this
request. |
Method | setETag | Set an entity tag for the outgoing response. |
Method | getAllHeaders | Return dictionary mapping the names of all received headers to the last value received for each. |
Method | getRequestHostname | Get the hostname that the user passed in to the request. |
Method | getHost | Get my originally requesting transport's host. |
Method | setHost | Change the host and port the request thinks it's using. |
Method | getClientIP | Return the IP address of the client who submitted this request. |
Method | getClientAddress | Return the address of the client who submitted this request. |
Method | isSecure | Return True
if this request is using a secure transport. |
Method | getUser | Return the HTTP user sent with this request, if any. |
Method | getPassword | Return the HTTP password sent with this request, if any. |
Method | connectionLost | There is no longer a connection for this request to respond over. Clean up anything which can't be useful anymore. |
Method | loseConnection | Pass the loseConnection through to the underlying channel. |
Method | __eq__ | Determines if two requests are the same object. |
Method | __ne__ | Determines if two requests are not the same object. |
Method | __hash__ | A Request is hashable so that it can be used as a mapping
key. |
Instance Variable | _disconnected | A flag which is False until the connection over which this
request was received is closed and which is True after that. (type: bool ) |
Instance Variable | _log | A logger instance for request related messages. (type: twisted.logger.Logger ) |
Method | _cleanup | Called when have finished responding and are no longer queued. |
Method | _authorize | Undocumented |
Inherited from Componentized:
Method | locateAdapterClass | Undocumented |
Method | setAdapter | Cache a provider for the given interface, by adapting self
using the given adapter class. |
Method | addAdapter | Utility method that calls addComponent. I take an adapter class and instantiate it with myself as the first argument. |
Method | setComponent | Cache a provider of the given interface. |
Method | addComponent | Add a component to me, for all appropriate interfaces. |
Method | unsetComponent | Remove my component specified by the given interface class. |
Method | removeComponent | Remove the given component from me entirely, for all interfaces for which it has been registered. |
Method | getComponent | Create or retrieve an adapter for the given interface. |
Method | __conform__ | Undocumented |
bytes
giving the default Content-Type value to send
in responses if no other value is set. None
disables the default.
Session
object representing state that will be transmitted over plain-text HTTP.
Session
object representing the state that will be transmitted only over HTTPS.
Parameters | channel | the channel we're connected to. |
queued | (deprecated) are we in the request queue, or can we start writing to the transport? |
Gather state to send when I am serialized for a particular perspective.
I will default to calling getStateToCopy
.
Override this to customize this behavior.
Return the text that links to a sibling of the requested resource.
Return the text that links to a child of the requested resource.
Write data to the transport (if not responding to a HEAD request).
Parameters | data | A string to write to the response. |
Override http.Request.finish
for possible encoding.
Ask a resource to render itself.
Parameters | resrc | a twisted.web.resource.IResource . |
Finish this request with an indication that processing failed and possibly display a traceback.
Parameters | reason | Reason this request has failed. (type: twisted.python.failure.Failure ) |
Returns | The reason passed to this method. (type: twisted.python.failure.Failure ) |
Remote version of addCookie; same interface.
Remote version of setLastModified; same interface.
Remote version of setResponseCode; same interface.
Remote version of registerProducer; same interface. (requires a remote producer.)
If a session has already been created or looked up with Request.getSession
,
this will return that object. (This will always be the session that
matches the security of the request; so if forceNotSecure
is
used on a secure request, this will not return that session.)
Returns | the session attribute (type: Session or None ) |
Check if there is a session cookie, and if not, create it.
By default, the cookie with be secure for HTTPS requests and not secure
for HTTP requests. If for some reason you need access to the insecure
cookie from a secure request you can set forceNotSecure =
True
.
Parameters | forceNotSecure | Should we retrieve a session that will be transmitted over HTTP, even if
this Request was
delivered over HTTPS? (type: bool ) |
Returns | At any time during resource traversal, a str
giving an absolute URL to the most nested resource which has yet been
reached. |
Returns | A URLPath
instance which identifies the URL for which this request is. |
Remember the currently-processed part of the URL for later recalling.
Handle receiving a request whose path is '*'.
RFC 7231 defines an OPTIONS * request as being something that a client can send as a low-effort way to probe server capabilities or readiness. Rather than bother the user with this, we simply fast-path it back to an empty 200 OK. Any non-OPTIONS verb gets a 405 Method Not Allowed telling the client they can only use OPTIONS.