Go で HTTP リクエストにプロキシを使用すると、ファイアウォールをバイパスし、IP アドレスを隠し、パフォーマンスを向上させることができます。次の手順でプロキシ リクエストを実装します。 1. 必要なパッケージをインポートします。 2. プロキシ URL を作成します。 3. プロキシ HTTP トランスポートを作成します。 4. HTTP クライアントを作成します。 5. クライアントを使用してリクエストを作成します。実際のケース: コードを使用してファイアウォールをバイパスし、制限された URL にアクセスし、プロキシ送信を通じてリクエストを行い、応答ステータスを出力します。
HTTP リクエストにプロキシを使用すると、次のような多くの状況で役立ちます:
Go で HTTP リクエストにプロキシを使用する手順は次のとおりです:
package main import ( "fmt" "net/http" "net/http/httputil" "net/url" )
proxyURL, err := url.Parse("http://127.0.0.1:8080") if err != nil { fmt.Println(err) return }
transport := &http.Transport{ Proxy: http.ProxyURL(proxyURL), }
client := &http.Client{ Transport: transport, }
resp, err := client.Get("https://www.example.com") if err != nil { fmt.Println(err) return }
制限された URL にアクセスするためにファイアウォールをバイパスする必要があるシナリオを考えてみましょう。これは、次のコードを使用して実行できます:
import ( "fmt" "net/http" "net/http/httputil" "net/url" ) func main() { proxyURL, err := url.Parse("http://127.0.0.1:8080") if err != nil { fmt.Println(err) return } transport := &http.Transport{ Proxy: http.ProxyURL(proxyURL), } client := &http.Client{ Transport: transport, } resp, err := client.Get("https://firewall-protected-url.com") if err != nil { fmt.Println(err) return } fmt.Println(resp.Status) }
以上がGolang で HTTP リクエストにプロキシを使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。