class documentation

Represents the non-IO parts of a HTTP request, including the method, URL info, and headers. This class is not meant for general use. It should only be used when implementing WSGI, ASGI, or another HTTP application spec. Werkzeug provides a WSGI implementation at :cls:`werkzeug.wrappers.Request`. :param method: The method the request was made with, such as ``GET``. :param scheme: The URL scheme of the protocol the request used, such as ``https`` or ``wss``. :param server: The address of the server. ``(host, port)``, ``(path, None)`` for unix sockets, or ``None`` if not known. :param root_path: The prefix that the application is mounted under. This is prepended to generated URLs, but is not part of route matching. :param path: The path part of the URL after ``root_path``. :param query_string: The part of the URL after the "?". :param headers: The headers received with the request. :param remote_addr: The address of the client sending the request. .. versionadded:: 2.0

Method __init__ Undocumented
Method __repr__ Undocumented
Class Variable access_control_request_headers Undocumented
Class Variable access_control_request_method Undocumented
Class Variable charset Undocumented
Class Variable content_encoding Undocumented
Class Variable content_md5 Undocumented
Class Variable content_type Undocumented
Class Variable date Undocumented
Class Variable encoding_errors The class used and returned by the :attr:`user_agent` property to parse the header. Defaults to :class:`~werkzeug.user_agent.UserAgent`, which does no parsing. An extension can provide a subclass that uses a parser to provide other data.
Class Variable max_forwards Undocumented
Class Variable origin Undocumented
Class Variable referrer Undocumented
Class Variable trusted_hosts Undocumented
Instance Variable headers Undocumented
Instance Variable method Undocumented
Instance Variable path Undocumented
Instance Variable query_string Undocumented
Instance Variable remote_addr Undocumented
Instance Variable root_path Undocumented
Instance Variable scheme Undocumented
Instance Variable server Undocumented
Property accept_charsets List of charsets this client supports as :class:`~werkzeug.datastructures.CharsetAccept` object.
Property accept_encodings List of encodings this client accepts. Encodings in a HTTP term are compression encodings such as gzip. For charsets have a look at :attr:`accept_charset`.
Property accept_languages List of languages this client accepts as :class:`~werkzeug.datastructures.LanguageAccept` object.
Property accept_mimetypes List of mimetypes this client supports as :class:`~werkzeug.datastructures.MIMEAccept` object.
Property access_route If a forwarded header exists this is a list of all ip addresses from the client ip to the last proxy server.
Property args The parsed URL parameters (the part in the URL after the question mark).
Property authorization The `Authorization` object in parsed form.
Property base_url Like :attr:`url` but without the query string.
Property cache_control A :class:`~werkzeug.datastructures.RequestCacheControl` object for the incoming cache control headers.
Property content_length The Content-Length entity-header field indicates the size of the entity-body in bytes or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET.
Property cookies A :class:`dict` with the contents of all cookies transmitted with the request.
Property full_path Requested path, including the query string.
Property host The host name the request was made to, including the port if it's non-standard. Validated with :attr:`trusted_hosts`.
Property host_url The request URL scheme and host only.
Property if_match An object containing all the etags in the `If-Match` header.
Property if_modified_since The parsed `If-Modified-Since` header as a datetime object.
Property if_none_match An object containing all the etags in the `If-None-Match` header.
Property if_range The parsed ``If-Range`` header.
Property if_unmodified_since The parsed `If-Unmodified-Since` header as a datetime object.
Property is_json Check if the mimetype indicates JSON data, either :mimetype:`application/json` or :mimetype:`application/*+json`.
Property is_secure ``True`` if the request was made with a secure protocol (HTTPS or WSS).
Property mimetype Like :attr:`content_type`, but without parameters (eg, without charset, type etc.) and always lowercase. For example if the content type is ``text/HTML; charset=utf-8`` the mimetype would be ``'text/html'``.
Property mimetype_params The mimetype parameters as dict. For example if the content type is ``text/html; charset=utf-8`` the params would be ``{'charset': 'utf-8'}``.
Property pragma The Pragma general-header field is used to include implementation-specific directives that might apply to any recipient along the request/response chain. All pragma directives specify optional behavior from the viewpoint of the protocol; however, some systems MAY require that behavior be consistent with the directives.
Property range The parsed `Range` header.
Property root_url The request URL scheme, host, and root path. This is the root that the application is accessed from.
Property url The full request URL with the scheme, host, root path, path, and query string.
Property url_charset The charset that is assumed for URLs. Defaults to the value of :attr:`charset`.
Property user_agent The user agent. Use ``user_agent.string`` to get the header value. Set :attr:`user_agent_class` to a subclass of :class:`~werkzeug.user_agent.UserAgent` to provide parsing for the other properties or other extended data.
Method _parse_content_type Undocumented
Instance Variable _parsed_content_type Undocumented
def __init__(self, method: str, scheme: str, server: t.Optional[t.Tuple[str, t.Optional[int]]], root_path: str, path: str, query_string: bytes, headers: Headers, remote_addr: t.Optional[str]): (source)

Undocumented

def __repr__(self) -> str: (source)

Undocumented

access_control_request_headers = (source)

Undocumented

access_control_request_method = (source)

Undocumented

Undocumented

content_encoding = (source)

Undocumented

content_md5 = (source)

Undocumented

content_type = (source)

Undocumented

Undocumented

encoding_errors: str = (source)

The class used and returned by the :attr:`user_agent` property to parse the header. Defaults to :class:`~werkzeug.user_agent.UserAgent`, which does no parsing. An extension can provide a subclass that uses a parser to provide other data. .. versionadded:: 2.0

max_forwards = (source)

Undocumented

Undocumented

referrer = (source)

Undocumented

Undocumented

Undocumented

Undocumented

Undocumented

query_string = (source)

Undocumented

remote_addr = (source)

Undocumented

root_path = (source)

Undocumented

Undocumented

Undocumented

List of charsets this client supports as :class:`~werkzeug.datastructures.CharsetAccept` object.

List of encodings this client accepts. Encodings in a HTTP term are compression encodings such as gzip. For charsets have a look at :attr:`accept_charset`.

List of languages this client accepts as :class:`~werkzeug.datastructures.LanguageAccept` object. .. versionchanged 0.5 In previous versions this was a regular :class:`~werkzeug.datastructures.Accept` object.

List of mimetypes this client supports as :class:`~werkzeug.datastructures.MIMEAccept` object.

If a forwarded header exists this is a list of all ip addresses from the client ip to the last proxy server.

The parsed URL parameters (the part in the URL after the question mark). By default an :class:`~werkzeug.datastructures.ImmutableMultiDict` is returned from this function. This can be changed by setting :attr:`parameter_storage_class` to a different type. This might be necessary if the order of the form data is important.

The `Authorization` object in parsed form.

Like :attr:`url` but without the query string.

A :class:`~werkzeug.datastructures.RequestCacheControl` object for the incoming cache control headers.

The Content-Length entity-header field indicates the size of the entity-body in bytes or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET.

A :class:`dict` with the contents of all cookies transmitted with the request.

Requested path, including the query string.

The host name the request was made to, including the port if it's non-standard. Validated with :attr:`trusted_hosts`.

The request URL scheme and host only.

An object containing all the etags in the `If-Match` header. :rtype: :class:`~werkzeug.datastructures.ETags`

The parsed `If-Modified-Since` header as a datetime object. .. versionchanged:: 2.0 The datetime object is timezone-aware.

An object containing all the etags in the `If-None-Match` header. :rtype: :class:`~werkzeug.datastructures.ETags`

The parsed ``If-Range`` header. .. versionchanged:: 2.0 ``IfRange.date`` is timezone-aware. .. versionadded:: 0.7

The parsed `If-Unmodified-Since` header as a datetime object. .. versionchanged:: 2.0 The datetime object is timezone-aware.

Check if the mimetype indicates JSON data, either :mimetype:`application/json` or :mimetype:`application/*+json`.

``True`` if the request was made with a secure protocol (HTTPS or WSS).

Like :attr:`content_type`, but without parameters (eg, without charset, type etc.) and always lowercase. For example if the content type is ``text/HTML; charset=utf-8`` the mimetype would be ``'text/html'``.

@property
mimetype_params: t.Dict[str, str] = (source)

The mimetype parameters as dict. For example if the content type is ``text/html; charset=utf-8`` the params would be ``{'charset': 'utf-8'}``.

The Pragma general-header field is used to include implementation-specific directives that might apply to any recipient along the request/response chain. All pragma directives specify optional behavior from the viewpoint of the protocol; however, some systems MAY require that behavior be consistent with the directives.

The parsed `Range` header. .. versionadded:: 0.7 :rtype: :class:`~werkzeug.datastructures.Range`

The request URL scheme, host, and root path. This is the root that the application is accessed from.

The full request URL with the scheme, host, root path, path, and query string.

@property
url_charset: str = (source)

The charset that is assumed for URLs. Defaults to the value of :attr:`charset`. .. versionadded:: 0.6

The user agent. Use ``user_agent.string`` to get the header value. Set :attr:`user_agent_class` to a subclass of :class:`~werkzeug.user_agent.UserAgent` to provide parsing for the other properties or other extended data. .. versionchanged:: 2.0 The built in parser is deprecated and will be removed in Werkzeug 2.1. A ``UserAgent`` subclass must be set to parse data from the string.

def _parse_content_type(self): (source)

Undocumented

_parsed_content_type = (source)

Undocumented