カスタム トランスポートでのプロキシの使用: Go プログラムによるソリューション
Go では、デフォルトで、http.Client はシステムのプロキシ設定を次のように使用します。 HTTP_PROXY や HTTPS_PROXY などの環境変数で構成されます。ただし、この動作はカスタム トランスポートには拡張されない場合があります。
http.ProxyFromEnvironment を使用してプロキシを設定する
カスタム トランスポートのプロキシをプログラムで構成するには、 http.ProxyFromEnvironment メソッド。このメソッドは、環境変数に基づいてプロキシ URL を返します。HTTPS リクエストでは HTTPS_PROXY が優先されます。
<code class="go">import ( "log" "net/http" "os" ) func main() { // Get proxy URL from environment variables proxyURL := http.ProxyFromEnvironment(os.Getenv) // Create a custom transport transport := &http.Transport{ TLSClientConfig: &tls.Config{InsecureSkipVerify: true}, Proxy: proxyURL, } // Create a client with the custom transport client := &http.Client{Transport: transport} // Send a request through the proxy resp, err := client.Get("https://example.com") if err != nil { log.Fatal("Error making request:", err) } // Read the response body defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { log.Fatal("Error reading response:", err) } // Print the response body fmt.Println(string(body)) }</code>
このコード スニペットは、http.ProxyFromEnvironment を使用してカスタム トランスポートのプロキシを設定する方法を示しています。環境変数を使用してプロキシ設定を構成すると、コードを変更せずに、異なるプロキシ構成を簡単に切り替えることができます。
以上がGo でカスタム トランスポートのプロキシをプログラムで構成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。