「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Go で HTTP リクエスト用に認証されたプロキシを設定するにはどうすればよいですか?

Go で HTTP リクエスト用に認証されたプロキシを設定するにはどうすればよいですか?

2024 年 11 月 9 日に公開
ブラウズ:428

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. 認証資格情報を宣言します: まず、プロキシ認証のユーザー名とパスワードを宣言します。

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

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

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

    client := &http.Client{
        Transport: transport,
    }

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

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3