HTTP API

Request

HTTP request object.

Constructor

Request(scope: dict[str, Any], receive: Any, app: Any)

Properties

Property Type Description
methodstrHTTP method
pathstrRequest path
headersHeadersRequest headers
queryQueryParamsQuery parameters
cookiesCookiesCookies
clienttuple[str, int] | NoneClient address
urlstrFull URL
userAnyAuthenticated user

Methods

  • async body() -> bytes — Get request body as bytes
  • async json() -> Any — Get request body as JSON
  • async text() -> str — Get request body as text
  • async form() -> dict[str, Any] — Get request body as form data
  • async render(template_name, context) -> Any — Render a template

Response

HTTP response.

Constructor

Response(content: bytes | str = b"", *, status_code: int = 200, headers: dict[str, str] | None = None, media_type: str | None = None)

Class Methods

  • from_value(value: Any) -> Response — Convert a value to a response

Response Types

JSONResponse

JSONResponse(content: Any, *, status_code: int = 200, headers: dict[str, str] | None = None)

HTMLResponse

HTMLResponse(content: str, *, status_code: int = 200, headers: dict[str, str] | None = None)

TextResponse

TextResponse(content: str, *, status_code: int = 200, headers: dict[str, str] | None = None)

RedirectResponse

RedirectResponse(url: str, status_code: int = 307, headers: dict[str, str] | None = None)

StreamingResponse

StreamingResponse(content: AsyncIterator[bytes] | Iterable[bytes], *, status_code: int = 200, headers: dict[str, str] | None = None, media_type: str = "application/octet-stream")

Headers

HTTP headers dictionary.

Constructor

Headers(raw: list[tuple[bytes, bytes]] | None = None)

Methods

  • get(key, default) — Get a header value
  • get_raw(key) — Get header as bytes
  • to_list() — Convert to raw ASGI format
  • to_dict() — Convert to dictionary

Cookies

HTTP cookies dictionary.

Methods

  • get(key, default) — Get a cookie value
  • set(key, value, **options) — Set a cookie with options
  • delete(key) — Delete a cookie
  • to_dict() — Convert to dictionary
  • to_headers() — Convert to Set-Cookie headers
Cookie Options

max_age, expires, path, domain, secure, httponly, samesite