## カスタム トランスポートを使用して Go HTTP クライアントでプロキシ サポートを設定するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-10-26 05:22:30
オリジナル
233 人が閲覧しました

##  How to Set Up Proxy Support in Go HTTP Clients with Custom Transports?

カスタム トランスポートを使用した Go プログラムでのプロキシの使用

Go で HTTP クライアントを作成する場合、多くの場合、処理するカスタム トランスポートを指定する必要があります。特定のネットワーク設定。ただし、標準の HTTP クライアントはプロキシ環境変数を自動的に尊重しません。

http.ProxyFromEnvironment の使用

Go プログラムでプロキシ サポートを有効にするには、次のようにします。 http.ProxyFromEnvironment メソッド。このメソッドは、環境変数 HTTP_PROXY、HTTPS_PROXY、NO_PROXY に基づいてプロキシ URL を返します。

<code class="go">var PTransport = &http.Transport{
    Proxy: http.ProxyFromEnvironment,
}

client := http.Client{
    Transport: PTransport,
}</code>
ログイン後にコピー

使用例

このアプローチが機能するかどうかをテストするには、次のようにします。プロキシ環境変数を手動で設定します:

export http_proxy='http://user:password@proxy-server:3128'
export https_proxy='http://user:password@proxy-server:3128'
export HTTP_PROXY='http://user:password@proxy-server:3128'
export HTTPS_PROXY='http://user:password@proxy-server:3128'
ログイン後にコピー

これで、HTTP クライアントを作成してリクエストを送信できます:

<code class="go">req, _ := http.NewRequest("GET", "https://jsonplaceholder.typicode.com/todos/1", nil)
req.Header.Add("If-None-Match", `some value`)
resp, _ := client.Do(req)</code>
ログイン後にコピー

プロキシ設定が正しい場合、リモートからの応答が返されます。サーバーが表示されるはずです。

以上が## カスタム トランスポートを使用して Go HTTP クライアントでプロキシ サポートを設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!