首页 > Web开发 > 详细

go http库 设置代理

时间:2020-06-01 19:48:36      阅读:61      评论:0      收藏:0      [点我收藏+]
func ProxyTest() {
	proxyAddr := "http://your IP:8080/"

	httpUrl := "http://your target url"

	poststr := "your  post values"

	proxy, err := url.Parse(proxyAddr)
	if err != nil {
		log.Fatal(err)
	}

	netTransport := &http.Transport{
		Proxy:                 http.ProxyURL(proxy),
		MaxIdleConnsPerHost:   10,
		ResponseHeaderTimeout: time.Second * time.Duration(5),
	}

	httpClient := http.Client{
		Timeout:   time.Second * 10,
		Transport: netTransport,
	}

	res, err := http.NewRequest("POST", httpUrl, strings.NewReader(poststr))
	if err != nil {
		log.Println(err)
		return
	}

	res.Header.Add("content-type", "application/x-ndjson")

	resp, err := httpClient.Do(res)

	defer resp.Body.Close()
	if resp.StatusCode != http.StatusOK {
		log.Println(err)
	}

	c, _ := ioutil.ReadAll(resp.Body)

	fmt.Println(string(c))
}

参考

https://i6448038.github.io/2017/11/11/httpAndGolang/

go http库 设置代理

原文:https://www.cnblogs.com/mysticbinary/p/13026784.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!