ssl 代理服务器+验证kwargs在httpx中破坏HTTP/2

rbl8hiat  于 2023-02-04  发布在  其他
关注(0)|答案(1)|浏览(121)

版本:httpx 0.23.3和httpcore 0.16.3。

import httpx

s=httpx.Client(
    http2=True, proxies='http://127.0.0.1:9000', verify=False
)
r=s.get('https://in.indeed.com')
print(r.http_version)

注解掉代理/verify得到HTTP/2。代理是常规的mitmproxy。
我发现了这个:https://github.com/encode/httpx/issues/873,但据说它在2020年被修复了。我简要地查看了httpx中的相应代码,看到http2到处传递,所以它可能在更深的地方。

xienkqul

xienkqul1#

嗯,我不知道什么是正确的方法,但是我已经在TunnelHTTPConnection/handle_request()的httpcore中将alpn_protocols设置为[“h2”],以无条件地强制它,现在它给我HTTP/2。

相关问题