streaming#
- class litestar.response.streaming.ASGIStreamingResponse#
Bases:
ASGIResponse
A streaming response.
- __init__(*, iterator: StreamType, background: BackgroundTask | BackgroundTasks | None = None, body: bytes | str = b'', content_length: int | None = None, cookies: Iterable[Cookie] | None = None, encoded_headers: Iterable[tuple[bytes, bytes]] | None = None, encoding: str = 'utf-8', headers: dict[str, Any] | None = None, is_head_response: bool = False, media_type: MediaType | str | None = None, status_code: int | None = None) None #
A low-level ASGI streaming response.
- Parameters:
background – A background task or a list of background tasks to be executed after the response is sent.
body – encoded content to send in the response body.
content_length – The response content length.
cookies – The response cookies.
encoded_headers – The response headers.
encoding – The response encoding.
headers – The response headers.
is_head_response – A boolean indicating if the response is a HEAD response.
iterator – An async iterator or iterable.
media_type – The response media type.
status_code – The response status code.
- class litestar.response.streaming.Stream#
Bases:
Response
[Union
[Iterable
[Union
[str
,bytes
]],Iterator
[Union
[str
,bytes
]],AsyncIterable
[Union
[str
,bytes
]],AsyncIterator
[Union
[str
,bytes
]]]]An HTTP response that streams the response data as a series of ASGI
http.response.body
events.- __init__(content: StreamType[str | bytes] | Callable[[], StreamType[str | bytes]], *, background: BackgroundTask | BackgroundTasks | None = None, cookies: ResponseCookies | None = None, encoding: str = 'utf-8', headers: ResponseHeaders | None = None, media_type: MediaType | OpenAPIMediaType | str | None = None, status_code: int | None = None) None #
Initialize the response.
- Parameters:
content – A sync or async iterator or iterable.
background – A
BackgroundTask
instance orBackgroundTasks
to execute after the response is finished. Defaults to None.cookies – A list of
Cookie
instances to be set under the responseSet-Cookie
header.encoding – The encoding to be used for the response headers.
headers – A string keyed dictionary of response headers. Header keys are insensitive.
media_type – A value for the response
Content-Type
header.status_code – An HTTP status code.
- to_asgi_response(app: Litestar | None, request: Request, *, background: BackgroundTask | BackgroundTasks | None = None, cookies: Iterable[Cookie] | None = None, encoded_headers: Iterable[tuple[bytes, bytes]] | None = None, headers: dict[str, str] | None = None, is_head_response: bool = False, media_type: MediaType | str | None = None, status_code: int | None = None, type_encoders: TypeEncodersMap | None = None) ASGIResponse #
Create an ASGIStreamingResponse from a StremaingResponse instance.
- Parameters:
app – The
Litestar
application instance.background – Background task(s) to be executed after the response is sent.
cookies – A list of cookies to be set on the response.
encoded_headers – A list of already encoded headers.
headers – Additional headers to be merged with the response headers. Response headers take precedence.
is_head_response – Whether the response is a HEAD response.
media_type – Media type for the response. If
media_type
is already set on the response, this is ignored.request – The
Request
instance.status_code – Status code for the response. If
status_code
is already set on the response, this istype_encoders – A dictionary of type encoders to use for encoding the response content.
- Returns:
An ASGIStreamingResponse instance.