提交
This commit is contained in:
@@ -42,10 +42,10 @@ type CurlParams struct {
|
|||||||
Headers map[string]interface{}
|
Headers map[string]interface{}
|
||||||
Cookies interface{}
|
Cookies interface{}
|
||||||
DataType dataType // FORM,JSON,XML
|
DataType dataType // FORM,JSON,XML
|
||||||
|
timeOutSecond int
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
defaultTimeOut = 180 // 默认(最长超时时间)
|
|
||||||
// 默认的transport
|
// 默认的transport
|
||||||
transport http.Transport = http.Transport{
|
transport http.Transport = http.Transport{
|
||||||
// Dial: func(netw, addr string) (net.Conn, error) {
|
// Dial: func(netw, addr string) (net.Conn, error) {
|
||||||
@@ -81,6 +81,7 @@ type curlx struct {
|
|||||||
func NewCurlx() *curlx {
|
func NewCurlx() *curlx {
|
||||||
return &curlx{
|
return &curlx{
|
||||||
transport: &transport,
|
transport: &transport,
|
||||||
|
timeOutSecond: 60
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -116,7 +117,7 @@ func (c *curlx) WithInsecureSkipVerify() {
|
|||||||
* 设置超时时间,单位秒
|
* 设置超时时间,单位秒
|
||||||
*/
|
*/
|
||||||
func (c *curlx) WithTimeout(timeout int) {
|
func (c *curlx) WithTimeout(timeout int) {
|
||||||
c.transport.ResponseHeaderTimeout = time.Second * time.Duration(timeout)
|
c.timeOutSecond = timeout
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -164,7 +165,7 @@ func (c *curlx) Send(ctx context.Context, p *CurlParams) (res string, httpcode i
|
|||||||
*/
|
*/
|
||||||
func (c *curlx) sendExec(ctx context.Context, p *CurlParams) (resp *http.Response, err error) {
|
func (c *curlx) sendExec(ctx context.Context, p *CurlParams) (resp *http.Response, err error) {
|
||||||
client := &http.Client{
|
client := &http.Client{
|
||||||
Timeout: time.Second * time.Duration(defaultTimeOut), // 设置该条连接的超时
|
Timeout: time.Second * time.Duration(p.timeOutSecond), // 设置该条连接的超时
|
||||||
Transport: c.transport, //
|
Transport: c.transport, //
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user