urllib3 是否支持 HTTP/2 请求?会吗?
Does urllib3 support HTTP/2 Requests? Will it?
我知道以下关于各种 python HTTP 库的信息:
- Requests does .
- Hyper does support HTTP/2 requests, but is archived as of early 2021 并且不是新项目的好选择。
- HTTPX does support HTTP/2, but this support is optional, requires installing extra dependencies, and comes with some caveats about rough edges.
- AIOHTTP does not support HTTP2 yet(截至 2022 年 4 月中旬)。
- 这个项目的重点也不仅仅是作为一个客户端——这个包还包括一个服务器。
我知道的另一个主要的 HTTP 请求库是 urllib3. This is what OpenAPI Generator 在生成 python 客户端库时默认使用。
我的问题是:
可以将 urrlib3 配置为发出 HTTP/2 请求吗?
我在 the documentation, and through my testing of a generated OpenAPI client, all requests are HTTP/1.1. If the answer is no currently, are the maintainers planning HTTP/2 support? I cannot find any evidence of this in the project's open issues 中找不到任何关于 http2 支持的信息。
我在 urllib3 discord 中询问了这个问题,并从 one of the maintainers that corroborates what Tim Roberts 评论中得到了答案;
- 正确的 HTTP/2 实现需要 async/await 来利用 HTTP/2 中的主要不同功能,即 making requests in parallel。
- urllib3 尤其不打算支持它,因为它通常需要重写。
我知道以下关于各种 python HTTP 库的信息:
- Requests does .
- Hyper does support HTTP/2 requests, but is archived as of early 2021 并且不是新项目的好选择。
- HTTPX does support HTTP/2, but this support is optional, requires installing extra dependencies, and comes with some caveats about rough edges.
- AIOHTTP does not support HTTP2 yet(截至 2022 年 4 月中旬)。
- 这个项目的重点也不仅仅是作为一个客户端——这个包还包括一个服务器。
我知道的另一个主要的 HTTP 请求库是 urllib3. This is what OpenAPI Generator 在生成 python 客户端库时默认使用。
我的问题是:
可以将 urrlib3 配置为发出 HTTP/2 请求吗?
我在 the documentation, and through my testing of a generated OpenAPI client, all requests are HTTP/1.1. If the answer is no currently, are the maintainers planning HTTP/2 support? I cannot find any evidence of this in the project's open issues 中找不到任何关于 http2 支持的信息。
我在 urllib3 discord 中询问了这个问题,并从 one of the maintainers that corroborates what Tim Roberts 评论中得到了答案;
- 正确的 HTTP/2 实现需要 async/await 来利用 HTTP/2 中的主要不同功能,即 making requests in parallel。
- urllib3 尤其不打算支持它,因为它通常需要重写。