Go语言使用隧道HTTP代码示例,具体信息根据实际情况修改
package main
import (
"fmt"
"io/ioutil"
"net/http"
"net/url"
)
func main() {
username := "username"
password := "password"
proxyServer := "ip.hahado.cn:10080"
targetURL := "http://httpbin.org/ip"
rawURL := fmt.Sprintf("http://%s:%s@%s", username, password, proxyServer)
proxyUrl, err := url.Parse(rawURL)
if err != nil {
panic(err)
}
client := http.Client{
Transport: &http.Transport{
Proxy: http.ProxyURL(proxyUrl),
},
}
req, _ := http.NewRequest("GET", targetURL, nil)
rsp, err := client.Do(req)
if err != nil {
fmt.Printf("request failed: %s\n", err)
return
}
defer rsp.Body.Close()
body, err := ioutil.ReadAll(rsp.Body)
if err != nil {
fmt.Println(err)
} else {
fmt.Println(string(body))
}
}

该代码示例展示了如何在Go中设置HTTP代理,通过隧道连接到指定的代理服务器,然后访问目标URL。它包括了创建URL、解析代理、配置HTTP客户端以及发送GET请求的步骤。
702

被折叠的 条评论
为什么被折叠?



