PATH:
opt
/
alt
/
python38
/
lib64
/
python3.8
/
site-packages
/
aiohttp
"""Low-level http related exceptions.""" from typing import Optional, Union from .typedefs import _CIMultiDict __all__ = ("HttpProcessingError",) class HttpProcessingError(Exception): """HTTP error. Shortcut for raising HTTP errors with custom code, message and headers. code: HTTP Error code. message: (optional) Error message. headers: (optional) Headers to be sent in response, a list of pairs """ code = 0 message = "" headers = None def __init__( self, *, code: Optional[int] = None, message: str = "", headers: Optional[_CIMultiDict] = None, ) -> None: if code is not None: self.code = code self.headers = headers self.message = message def __str__(self) -> str: return f"{self.code}, message={self.message!r}" def __repr__(self) -> str: return f"<{self.__class__.__name__}: {self}>" class BadHttpMessage(HttpProcessingError): code = 400 message = "Bad Request" def __init__(self, message: str, *, headers: Optional[_CIMultiDict] = None) -> None: super().__init__(message=message, headers=headers) self.args = (message,) class HttpBadRequest(BadHttpMessage): code = 400 message = "Bad Request" class PayloadEncodingError(BadHttpMessage): """Base class for payload errors""" class ContentEncodingError(PayloadEncodingError): """Content encoding error.""" class TransferEncodingError(PayloadEncodingError): """transfer encoding error.""" class ContentLengthError(PayloadEncodingError): """Not enough data for satisfy content length header.""" class LineTooLong(BadHttpMessage): def __init__( self, line: str, limit: str = "Unknown", actual_size: str = "Unknown" ) -> None: super().__init__( f"Got more than {limit} bytes ({actual_size}) when reading {line}." ) self.args = (line, limit, actual_size) class InvalidHeader(BadHttpMessage): def __init__(self, hdr: Union[bytes, str]) -> None: if isinstance(hdr, bytes): hdr = hdr.decode("utf-8", "surrogateescape") super().__init__(f"Invalid HTTP Header: {hdr}") self.hdr = hdr self.args = (hdr,) class BadStatusLine(BadHttpMessage): def __init__(self, line: str = "") -> None: if not isinstance(line, str): line = repr(line) super().__init__(f"Bad status line {line!r}") self.args = (line,) self.line = line class InvalidURLError(BadHttpMessage): pass
[-] client_ws.py
[edit]
[-] web_runner.py
[edit]
[-] web.py
[edit]
[-] web_request.py
[edit]
[-] tcp_helpers.py
[edit]
[-] web_urldispatcher.py
[edit]
[-] client_proto.py
[edit]
[-] _helpers.cpython-38-x86_64-linux-gnu.so
[edit]
[-] web_ws.py
[edit]
[-] web_response.py
[edit]
[+]
..
[-] _find_header.pxd
[edit]
[-] web_protocol.py
[edit]
[-] _http_parser.pyx
[edit]
[-] hdrs.py
[edit]
[-] helpers.py
[edit]
[-] multipart.py
[edit]
[-] http.py
[edit]
[-] _websocket.c
[edit]
[-] _headers.pxi
[edit]
[-] signals.pyi
[edit]
[-] _http_parser.c
[edit]
[-] client_exceptions.py
[edit]
[-] _websocket.pyx
[edit]
[-] http_writer.py
[edit]
[-] _http_writer.cpython-38-x86_64-linux-gnu.so
[edit]
[-] signals.py
[edit]
[-] worker.py
[edit]
[-] web_exceptions.py
[edit]
[-] web_log.py
[edit]
[-] client.py
[edit]
[-] web_server.py
[edit]
[-] py.typed
[edit]
[-] abc.py
[edit]
[-] payload.py
[edit]
[-] formdata.py
[edit]
[-] web_middlewares.py
[edit]
[-] streams.py
[edit]
[-] pytest_plugin.py
[edit]
[-] frozenlist.py
[edit]
[+]
__pycache__
[-] _helpers.pyx
[edit]
[-] web_app.py
[edit]
[-] cookiejar.py
[edit]
[-] http_exceptions.py
[edit]
[-] payload_streamer.py
[edit]
[-] log.py
[edit]
[-] _helpers.c
[edit]
[-] test_utils.py
[edit]
[-] _find_header.c
[edit]
[-] http_parser.py
[edit]
[-] web_fileresponse.py
[edit]
[-] locks.py
[edit]
[-] _http_parser.cpython-38-x86_64-linux-gnu.so
[edit]
[-] _http_writer.pyx
[edit]
[-] tracing.py
[edit]
[-] frozenlist.pyi
[edit]
[-] resolver.py
[edit]
[-] _helpers.pyi
[edit]
[-] __init__.py
[edit]
[-] _frozenlist.c
[edit]
[-] _frozenlist.pyx
[edit]
[+]
.hash
[-] _cparser.pxd
[edit]
[-] base_protocol.py
[edit]
[-] web_routedef.py
[edit]
[-] connector.py
[edit]
[-] _frozenlist.cpython-38-x86_64-linux-gnu.so
[edit]
[-] _find_header.h
[edit]
[-] typedefs.py
[edit]
[-] _websocket.cpython-38-x86_64-linux-gnu.so
[edit]
[-] http_websocket.py
[edit]
[-] _http_writer.c
[edit]
[-] client_reqrep.py
[edit]