Skip to content

net/http库

发送请求

请求配置代理

在Go语言中,要发送HTTP请求并配置代理,可以使用http包中的http.Client结构体。以下是一个使用HTTP代理的例子:

go
package main

import (
	"fmt"
	"io/ioutil"
	"net/http"
	"net/url"
)

func main() {
	// 代理地址
	proxyURL, err := url.Parse("http://your-proxy-host:your-proxy-port")
	if err != nil {
		fmt.Println("Error parsing proxy URL:", err)
		return
	}

	// 配置代理
	transport := &http.Transport{
		Proxy: http.ProxyURL(proxyURL),
	}

	// 创建带有代理的HTTP客户端
	client := &http.Client{
		Transport: transport,
	}

	// 发送请求
	response, err := client.Get("http://example.com")
	if err != nil {
		fmt.Println("Error making request:", err)
		return
	}
	defer response.Body.Close()

	// 读取响应内容
	body, err := ioutil.ReadAll(response.Body)
	if err != nil {
		fmt.Println("Error reading response body:", err)
		return
	}

	// 打印响应内容
	fmt.Println(string(body))
}

请注意将your-proxy-host和your-proxy-port替换为您的代理服务器的实际主机名和端口号。上述代码将创建一个带有代理的HTTP客户端,然后使用该客户端发送请求到http://example.com