Exception classes
httpx.HTTPError(message)RequestError 和 HTTPStatusError 的基类。
在发出请求并调用 .raise_for_status() 时,
可用于 try...except 代码块。
例如:
try:
response = httpx.get("https://www.example.com")
response.raise_for_status()
except httpx.HTTPError as exc:
print(f"HTTP Exception for {exc.request.url} - {exc}")
httpx.RequestError(message, *, request=None)所有在发出 .request() 时可能发生的异常的基类。
httpx.TransportError(message, *, request=None)所有在 Transport API 层级发生的异常的基类。
httpx.TimeoutException(message, *, request=None)超时错误的基类。
某个操作已超时。
httpx.ConnectTimeout(message, *, request=None)连接主机时超时。
httpx.ReadTimeout(message, *, request=None)从主机接收数据时超时。
httpx.WriteTimeout(message, *, request=None)向主机发送数据时超时。
httpx.PoolTimeout(message, *, request=None)等待从连接池获取连接时超时。
httpx.NetworkError(message, *, request=None)网络相关错误的基类。
在与网络交互时发生错误。
httpx.ConnectError(message, *, request=None)建立连接失败。
httpx.ReadError(message, *, request=None)从网络接收数据失败。
httpx.WriteError(message, *, request=None)通过网络发送数据失败。
httpx.CloseError(message, *, request=None)关闭连接失败。
httpx.ProtocolError(message, *, request=None)协议被违反。
httpx.LocalProtocolError(message, *, request=None)客户端违反了协议。
例如,如果用户显式实例化了一个 Request 实例,
但未包含必需的 Host: 头信息,然后直接使用 client.send() 发出请求。
httpx.RemoteProtocolError(message, *, request=None)服务器违反了协议。
例如,返回了格式错误的 HTTP 响应。
httpx.ProxyError(message, *, request=None)建立代理连接时发生错误。
httpx.UnsupportedProtocol(message, *, request=None)尝试向不受支持的协议发出请求。
例如向 ftp://www.example.com 发出请求。
httpx.DecodingError(message, *, request=None)由于编码格式错误,响应解码失败。
httpx.TooManyRedirects(message, *, request=None)重定向次数过多。
httpx.HTTPStatusError(message, *, request, response)响应返回了4xx或5xx的错误HTTP状态码。
可能在调用response.raise_for_status()时抛出。
httpx.InvalidURL(message)URL格式不正确或无法解析。
httpx.CookieConflict(message)尝试通过名称查找cookie,但存在多个同名cookie。
可能在调用response.cookies.get(...)时发生。
httpx.StreamError(message)流异常的基类。
开发人员以无效方式访问请求流时发生的错误。
httpx.StreamConsumed()尝试读取或流式传输内容,但内容已被流式传输完毕。
httpx.StreamClosed()尝试读取或流式传输响应内容,但请求已被关闭。
httpx.ResponseNotRead()尝试访问流式响应内容,但未先调用read()方法。
httpx.RequestNotRead()尝试访问流式请求内容,但未先调用read()方法。
异常
本页面列出了使用 HTTPX 时可能引发的异常。
关于如何处理 HTTPX 异常的概述,请参阅异常(快速入门)。
异常层次结构
- HTTPError
- RequestError
- TransportError
- TimeoutException
- ConnectTimeout
- ReadTimeout
- WriteTimeout
- PoolTimeout
- NetworkError
- ConnectError
- ReadError
- WriteError
- CloseError
- ProtocolError
- LocalProtocolError
- RemoteProtocolError
- ProxyError
- UnsupportedProtocol
- TimeoutException
- DecodingError
- TooManyRedirects
- TransportError
- HTTPStatusError
- RequestError
- InvalidURL
- CookieConflict
- StreamError
- StreamConsumed
- ResponseNotRead
- RequestNotRead
- StreamClosed