mirror of
https://github.com/duanhf2012/origin.git
synced 2026-02-03 22:45:13 +08:00
优化httpclient模块
This commit is contained in:
@@ -43,7 +43,15 @@ func (slf *SyncHttpResponse) Get(timeoutMs int) HttpResponse {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *HttpClientModule) Init(maxpool int, proxyUrl string) {
|
func (m *HttpClientModule) InitHttpClient(transport http.RoundTripper,timeout time.Duration,checkRedirect func(req *http.Request, via []*http.Request) error){
|
||||||
|
m.client = &http.Client{
|
||||||
|
Transport: transport,
|
||||||
|
Timeout: timeout,
|
||||||
|
CheckRedirect: checkRedirect,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *HttpClientModule) Init(proxyUrl string, maxpool int, dialTimeout time.Duration,dialKeepAlive time.Duration,idleConnTimeout time.Duration,timeout time.Duration) {
|
||||||
type ProxyFun func(_ *http.Request) (*url.URL, error)
|
type ProxyFun func(_ *http.Request) (*url.URL, error)
|
||||||
var proxyFun ProxyFun
|
var proxyFun ProxyFun
|
||||||
if proxyUrl != "" {
|
if proxyUrl != "" {
|
||||||
@@ -55,16 +63,16 @@ func (m *HttpClientModule) Init(maxpool int, proxyUrl string) {
|
|||||||
m.client = &http.Client{
|
m.client = &http.Client{
|
||||||
Transport: &http.Transport{
|
Transport: &http.Transport{
|
||||||
DialContext: (&net.Dialer{
|
DialContext: (&net.Dialer{
|
||||||
Timeout: 5 * time.Second,
|
Timeout: dialTimeout,
|
||||||
KeepAlive: 30 * time.Second,
|
KeepAlive: dialKeepAlive,
|
||||||
}).DialContext,
|
}).DialContext,
|
||||||
MaxIdleConns: maxpool,
|
MaxIdleConns: maxpool,
|
||||||
MaxIdleConnsPerHost: maxpool,
|
MaxIdleConnsPerHost: maxpool,
|
||||||
IdleConnTimeout: 60 * time.Second,
|
IdleConnTimeout: idleConnTimeout,
|
||||||
Proxy: proxyFun,
|
Proxy: proxyFun,
|
||||||
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
||||||
},
|
},
|
||||||
Timeout: 5 * time.Second,
|
Timeout: timeout,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user