将字符串替换为golang代理的变量
我在这里尝试使用http代理代码将字符串替换为golang代理的变量,go,Go,我在这里尝试使用http代理代码 proxyUrl := url.Parse(strings.Replace("%v", RandomProxyAddress())) http.DefaultTransport = &http.Transport{Proxy: http.ProxyURL(proxyUrl)} 告诉我url.Parse中的参数太多 但是当我尝试的时候 proxyUrl := url.Parse(RandomProxyAddress()) http.DefaultTran
proxyUrl := url.Parse(strings.Replace("%v", RandomProxyAddress()))
http.DefaultTransport = &http.Transport{Proxy: http.ProxyURL(proxyUrl)}
告诉我url.Parse中的参数太多
但是当我尝试的时候
proxyUrl := url.Parse(RandomProxyAddress())
http.DefaultTransport = &http.Transport{Proxy: http.ProxyURL(proxyUrl)}
我在单值上下文中获取/main.go:138:multiple-value url.Parse()
当我尝试字符串替换时,它也告诉我太多变量。不确定如何让我的代理使用url。Parse首先,url.Parse返回两个变量,一个url和一个错误,根据
其次,假设RandomProxyAddress()
返回字符串或格式化为所需字符串的内容,而不是strings.Replace
,您可能打算使用fmt.Sprintf(“%v”,RandomProxyAddress())
。总之,你应该:
addr := fmt.Sprintf("%v", RandomProxyAddress())
proxyURL, err := url.Parse(addr)
if err != nil {
log.Println(err)
}
也就是说,如果RandomProxyAddress()
已经返回字符串,fmt.Sprintf
就没有必要了。如果您确实想使用字符串.Replace
,请注意,它不是两个。需要4个参数。你在找吗?是的,这就是问题所在谢谢你@jimb不太清楚否决票是为了什么。