Skip to content

HTTP

Configuring binary responses

Binary responses are determined using the Content-Type and Content-Encoding headers from the event request and a list of text MIME types.

Compression

If the Content-Encoding header is set to gzip or br, then a binary response will be returned regardless of MIME type.

State machine

The HTTPCycle is used by the adapter to communicate message events between the application and GCP. It is a state machine that handles the entire ASGI request and response cycle.

HTTPCycle

class vellox.protocols.http.HTTPCycle(scope, body)
async run(self, app)
async receive(self)
async send(self, message)

HTTPCycleState

class vellox.protocols.http.HTTPCycleState(value, names=None, *, module=None, qualname=None, type=None, start=1)

The state of the ASGI http connection. * REQUEST - Initial state. The ASGI application instance will be run with the connection scope containing the http type. * RESPONSE - The http.response.start event has been sent by the application. The next expected message is the http.response.body event, containing the body content. An application may pass the more_body argument to send content in chunks, however content will always be returned in a single response, never streamed. * COMPLETE - The body content from the ASGI application has been completely read. A disconnect event will be sent to the application, and the response will be returned.