2016-09-19 71 views
0

Golang的包净/ HTTP /传输可以自动设置Proxy-Authorization头在Golang净/ HTTP /运输代理CONNECT方法头支撑

func (t *Transport) dialConn(ctx context.Context, cm connectMethod) (*persistConn, error) 

proxyURL, _ := url.Parse("http://username:[email protected]") 
client  := http.Client{Transport: &http.Transport{Proxy:http.ProxyURL(proxyURL)}} 

但我需要提交X标头到代理服务器。如何自定义传输CONNECT方法请求标头?

net/http/transport

回答

0

这个怎么样:

// ... 
request, err := http.NewRequest("GET", "https://www.google.com", nil) 
if err != nil { 
    // do something 
} 
// add header here. 
request.Header.Add("X-Header", "xxx") 

response, err := client.Do(request) 
if err != nil { 
    // do something 
} 
// ... 
+0

这是行不通的,因为'request.Header'将不会安装到** ** CONNECT请求。 – Jonathan

+0

我想代理服务器在使用'CONNECT'时不能'看到'请求头,请点击这里:https://stackoverflow.com/questions/10369679/do-http-proxy-servers-modify-request-packets – jsxqf