-
Notifications
You must be signed in to change notification settings - Fork 545
feat: add support for HTTPS_PROXY #306
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This commit adds support for the HTTPS_PROXY environment variable. At the moment the NO_PROXY environment variable is ignored, please be aware of that! This should close fullstorydev#166
celloni
commented
May 3, 2022
Thanks a lot for the PR!
curl is also respecting lowercase https_proxy
do you think it make sense to do this here as well?
Hi @denysvitali thanks for the contribution. Is there a reason we'd need a new third party lib instead of using Go's native proxying?
CpuID
commented
Jul 5, 2022
can confirm this is working great for us - would love to see it merged 👍
Hi @denysvitali thanks for the contribution. Is there a reason we'd need a new third party lib instead of using Go's native proxying?
https://github.com/mwitkow/go-http-dialer README explains it:
Some enterprises have fairly restrictive networking environments. They typically operate HTTP forward proxies that require user authentication. These proxies usually allow HTTPS (TCP to :443) to pass through the proxy using the CONNECT method. The CONNECT method is basically a HTTP-negotiated "end-to-end" TCP stream... which is exactly what net.Conn is :)
net/proxy cannot be used here AFAIK because you can't have a dialer that uses TCP over HTTP. The only way to do it is to use a SOCKS5 proxy.
I think I'd be trivially fine with a patch to just change (&net.Dialer{}).DialContext(ctx, network, address)
=> proxy.Dial(ctx, network, address)
which would solve at least some of the cases. But the http dialer stuff seems... very unusual and special case.
savely-krasovsky
commented
Sep 20, 2022
Release with this patch: https://github.com/L11R/grpcurl/releases/tag/v1.8.8
Hi, what exactly is the status of this patch?
I was using the 1.9.1, and could not get the http_proxy to work.
However downloading the version mentioned above (1.8.8) does work.
So was this patch not carried forward, or did it somehow change and require different configuration?
(Incidentally, the patch in 1.8.8 did not work on Windows)
This commit adds support for the
HTTPS_PROXY
environment variable.At the moment the
NO_PROXY
environment variable is ignored, pleasebe aware of that!
This should close #166
On top of that, this adds support for
SOCKS_PROXY
via the ProxyFromEnvironment method ofgolang.org/x/net/proxy