diff --git a/httpx/_exceptions.py b/httpx/_exceptions.py index 5b8cfc4fdf..01758ede69 100644 --- a/httpx/_exceptions.py +++ b/httpx/_exceptions.py @@ -58,6 +58,17 @@ class HTTPError(Exception): def __init__(self, message: str) -> None: super().__init__(message) + self._request: typing.Optional["Request"] = None + + @property + def request(self) -> "Request": + if self._request is None: + raise RuntimeError("The .request property has not been set.") + return self._request + + @request.setter + def request(self, request: "Request") -> None: + self._request = request class RequestError(HTTPError): @@ -75,16 +86,6 @@ def __init__(self, message: str, *, request: "Request" = None) -> None: # have a `.request` property set on them. self._request = request - @property - def request(self) -> "Request": - if self._request is None: - raise RuntimeError("The .request property has not been set.") - return self._request - - @request.setter - def request(self, request: "Request") -> None: - self._request = request - class TransportError(RequestError): """