-
Notifications
You must be signed in to change notification settings - Fork 133
Open
Description
The urllib3 test suite includes an HTTP/1.1 proxy that supports CONNECT. This works by first establishing an HTTP connection, and then exchanging raw bytes over TCP. When porting this to Hypercorn, I realized that the ASGI protocol offers no way of exchanging raw bytes or getting access to the transport (django/asgiref#112, Kludex/uvicorn#400).
(This might not be an issue for HTTP/2 where CONNECT works with DATA frames, but h2 does not currently support CONNECT python-hyper/h2#319 anyway and outright rejects requests made by curl --proxy-http2. So let's make this issue about HTTP/1.1)
The two options are:
- Implement absolute URI and CONNECT in Hypercorn itself
- Give access to the transport, without any guarantees made
urllib3 currently does the latter, see urllib3@7269fd3.
Would you consider reviewing a contribution along those lines?
smbrineNewcool1230
Metadata
Metadata
Assignees
Labels
No labels