2015-06-26 51 views
0

我希望我的golang http客戶端僅在用戶提供代理值時才使用代理。golang程序確定用戶是否使用代理

// Make HTTP GET/POST request 
proxyUrl, err := url.Parse(proxy) 
tr := &http.Transport{ 
     DisableKeepAlives: true, 
     Proxy:    http.ProxyURL(proxyUrl), 
} 

上述代碼總是嘗試通過代理進行連接,即使代理變量爲空白也是如此。

+0

檢查ERR –

+1

你也可以看看[FUNC ProxyFromEnvironment(http://golang.org/src/net/http/transport.go?h=proxy#L120)作爲參考。 –

回答

0

感謝您的建議。現在我能夠使它工作。以下是修改後的代碼。

tr := &http.Transport{} 
tr.DisableKeepAlives = true 
if len(proxy) != 0 { // Set the proxy only if the proxy param is specified 
    proxyUrl, err := url.Parse(proxy) 
    if err == nil { 
     tr.Proxy = http.ProxyURL(proxyUrl) 
    } 
} 
相關問題