ホームページ >バックエンド開発 >Golang >Go で HTTP リクエスト用に認証されたプロキシを設定する方法は?

Go で HTTP リクエスト用に認証されたプロキシを設定する方法は?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-28 22:26:30655ブラウズ

How to Set Up Authenticated Proxies for HTTP Requests in Go?

Go での HTTP リクエストの認証を伴うプロキシの使用

HTTP リクエストを扱うとき、認証付きプロキシ。これは、ネットワークの制限またはパフォーマンスの向上が原因である可能性があります。ただし、Go で認証を使用してプロキシを設定するのは少し難しい場合があります。

net/http パッケージ (Go で HTTP リクエストを処理するための標準ライブラリ パッケージ) のドキュメントには、プロキシの使用方法の例が記載されています。認証されたプロキシの場合には明示的には対応していません。これに対処するには、トランスポートで HEADER を設定して、プロキシ リクエストを正しく認証する必要があります。

Go の net/http パッケージを使用して、HTTP リクエストで認証付きのプロキシを使用する方法は次のとおりです。

  1. 認証資格情報を宣言します: まず、プロキシ認証のユーザー名とパスワードを宣言します。

    <code class="go">auth := "username:password"</code>
  2. 資格情報をエンコードします: Base64 エンコーディングを使用して資格情報をエンコードします。

    <code class="go">basicAuth := "Basic " + base64.StdEncoding.EncodeToString([]byte(auth))</code>
  3. ProxyConnectHeader を設定します: 保持する http.Header を作成します。プロキシ認証ヘッダーを作成し、エンコードされた認証情報を追加します。

    <code class="go">transport.ProxyConnectHeader = http.Header{}
    transport.ProxyConnectHeader.Add("Proxy-Authorization", basicAuth)</code>
  4. トランスポートを使用します: HTTP リクエストに変更されたトランスポートを使用します。

    <code class="go">client := &http.Client{
        Transport: transport,
    }</code>

これらの手順に従うことで、Go の HTTP リクエストで認証付きプロキシを正常に使用できます。

以上がGo で HTTP リクエスト用に認証されたプロキシを設定する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。