golang设置http代理
问题场景:
golang通过eino的官方agent示例调用duckduckgo进行联网搜索时出现网络问题,电脑此时是挂了工具的浏览器整出打开
官方示例:https://www.cloudwego.io/zh/docs/eino/quick_start/agent_llm_with_tools/
问题原因:go代码没有走同样的代理,还是未翻墙的状态
解决方案:
go的设置代理有两种方法
方法1:很简单,在go的http包中的transport.go中会通过下面的方法感知环境变量https://pkg.go.dev/golang.org/x/net/http/httpproxy,所以在代码中显式的制定代理即可
os.Setenv(“HTTP_PROXY”, “http://127.0.0.1:7897”)
os.Setenv(“HTTPS_PROXY”, “http://127.0.0.1:7897”)
方法2:https://developer.aliyun.com/article/1672494
这两种方法均亲测有效,调用duckduckgo成功