3 回答
TA贡献1851条经验 获得超5个赞
所以我能够找到我的问题的答案,任何人都对如何在 go 中设置 socks5 客户端感兴趣,它是:
dialSocksProxy, err := proxy.SOCKS5("tcp", "proxy_ip", nil, proxy.Direct)
if err != nil {
fmt.Println("Error connecting to proxy:", err)
}
tr := &http.Transport{Dial: dialSocksProxy.Dial}
// Create client
myClient := &http.Client{
Transport: tr,
}
TA贡献2016条经验 获得超9个赞
最近版本的 Go 还通过HTTP_PROXY
环境变量支持 SOCKS5 代理。您可以http.Client
像往常一样编写代码,然后在运行时设置环境变量,例如:
HTTP_PROXY="socks5://127.0.0.1:1080/" ./myGoHttpClient
TA贡献1877条经验 获得超1个赞
如果您需要带有身份验证的socks5 客户端代理,您可以使用以下内容:
auth := proxy.Auth{
User: "YOUR_PROXY_LOGIN",
Password: "YOUR_PROXY_PASSWORD",
}
dialer, err := proxy.SOCKS5("tcp", "PROXY_IP", &auth, proxy.Direct)
if err != nil {
fmt.Fprintln(os.Stderr, "can't connect to the proxy:", err)
}
tr := &http.Transport{Dial: dialer.Dial}
myClient := &http.Client{
Transport: tr,
}
- 3 回答
- 0 关注
- 182 浏览
添加回答
举报