使用具有驗證的HTTP 代理
使用具有驗證的代理時,預設的HTTP 請求方法不允許新增授權標頭要求。在將代理支援整合到現有第三方程式碼中時,這可能會帶來挑戰。
在這種情況下,另一種方法是建立具有所需代理程式配置的自訂 HTTP 用戶端。然後可以使用此客戶端代替第三方包中的預設 HTTP 用戶端。
以下範例說明如何使用http 套件建立具有代理驗證的自訂HTTP 用戶端:
import ( "net/http" "net/url" ) // Create a proxy URL with authentication proxyURL := &url.URL{ Scheme: "http", User: url.UserPassword("username", "password"), Host: "proxy.com:8080", } // Create a custom HTTP client with the proxy client := &http.Client{ Transport: &http.Transport{ Proxy: http.ProxyURL(proxyURL), }, } // Use the custom client with the third-party package resp, err := client.PostForm(method, params) if err != nil { // Handle error }
或者,可以直接解析URL:
proxyURL, _ := url.Parse("http://username:password@proxy.com:8080") client := &http.Client{ Transport: &http.Transport{ Proxy: http.ProxyURL(proxyURL), }, }
此方法可讓您為代理指定必要的身份驗證憑證用戶端配置。
以上是如何建立具有代理身份驗證的 Go HTTP 用戶端?的詳細內容。更多資訊請關注PHP中文網其他相關文章!