web.web.wsgiserver.HTTPRequest

Package web :: Package web :: Package wsgiserver :: Class HTTPRequest |
[hide private]
[frames] | no frames]

# Class HTTPRequest

source code

    object --+
             |
            HTTPRequest

    An HTTP Request (and response).

    A single HTTP connection may consist of multiple request/response pairs.

    server: the Server object which is receiving this request.
    conn: the HTTPConnection object on which this request connected.

    inheaders: a dict of request headers.
    outheaders: a list of header tuples to write in the response.
    ready: when True, the request has been parsed and is ready to begin
        generating the response. When False, signals the calling Connection
        that the response should not be generated and the connection should
        close.
    close_connection: signals the calling Connection that the request
        should close. This does not imply an error! The client and/or
        server may each request that the connection be closed.
    chunked_write: if True, output will be encoded with the "chunked"
        transfer-coding. This value is set automatically inside
        send_headers.

Instance Methods | [hide private]
__init__(self, server, conn) x.__init__(...) initializes x; see x.__class__.__doc__ for signature | source code
parse_request(self) Parse the next HTTP request start-line and message-headers. | source code
read_request_line(self) | source code
read_request_headers(self) Read self.rfile into self.inheaders. | source code
parse_request_uri(self, uri) Parse a Request-URI into (scheme, authority, path). | source code
respond(self) Call the gateway and write its iterable output. | source code
simple_response(self, status, msg=`'````'`) Write a simple response back to the client. | source code
write(self, chunk) Write unbuffered data to the client. | source code
send_headers(self) Assert, process, and send the HTTP response message-headers. | source code
Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__sizeof__`, `__str__`, `__subclasshook__`

Properties | [hide private]
Inherited from `object`: `__class__`

Method Details | [hide private]

### __init__(self, server, conn) (Constructor) | source code
x.__init__(...) initializes x; see x.__class__.__doc__ for signature Overrides: object.__init__ (inherited documentation)

### read_request_headers(self) | source code
Read self.rfile into self.inheaders. Return success.

### parse_request_uri(self, uri) | source code
    Parse a Request-URI into (scheme, authority, path).

    Note that Request-URI's must be one of:

        Request-URI    = "*" | absoluteURI | abs_path | authority

    Therefore, a Request-URI which starts with a double forward-slash
    cannot be a "net_path":

        net_path      = "//" authority [ abs_path ]

    Instead, it must be interpreted as an "abs_path" with an empty first
    path segment:

        abs_path      = "/"  path_segments
        path_segments = segment *( "/" segment )
        segment       = *pchar *( ";" param )
        param         = *pchar

### send_headers(self) | source code
Assert, process, and send the HTTP response message-headers. You must set self.status, and self.outheaders before calling this.