我有这个代理地址:125.119.175.48:8909
如何使用cURL(如cURL http://www.example.com)执行HTTP请求,但指定我的网络的代理地址?
我有这个代理地址:125.119.175.48:8909
如何使用cURL(如cURL http://www.example.com)执行HTTP请求,但指定我的网络的代理地址?
当前回答
使用以下方法
curl -I -x 192.168.XX: XX http://google.com
192.168.X。X:XX输入您的代理服务器ip和端口。
-v verbose模式,它将提供更多的详细信息,包括头和响应。
其他回答
如果您只是为一次性命令设置代理,则不需要导出http[s]_proxy shell变量。如。
http_proxy=http://your.proxy.server:port curl http://www.example.com
也就是说,如果我知道我总是要使用代理,我更喜欢curl -x。
我喜欢用这个来获得我被看到的IP
curl -x http://proxy_server:proxy_port https://api.ipify.org?format=json && echo
希望这能帮助到一些人。
作为airween的补充,另一个好主意是将它添加到你的.bashrc中,这样你就可以从非代理环境切换到代理环境:
alias proxyon="export http_proxy='http://YOURPROXY:YOURPORT';export https_proxy='http://YOURPROXY:YOURPORT'"
alias proxyoff="export http_proxy='';export https_proxy=''"
WHERE YOURPROXY:YOURPORT就是你的ip和端口代理:-)。
然后,简单地做
proxyon
您的系统将开始使用代理,与之相反:
proxyoff
根据您的工作场所,您可能还需要为curl指定-k或——insecure选项,以解决CA证书的潜在问题。
curl -x <myCompanyProxy>:<port> -k -O -L <link to file to download>
对于http代理隧道(TLS协议需要),您需要指定-p(即——proxytunnel)而不是-x。
关于代理的Curl帖子
代理隧道使用新的“CONNECT”关键字而不是修改过的“GET”关键字
这是节点http-proxy-中间件库所需要的。
只有当我使用wget时,我才得到一个线索。