http的代码,超时以后,会在defer的部分报空指针,不知道哪里有问题了
client := &http.Client{
Timeout: 1 * time.Second,
}
response, errr := client.Do(request)
defer response.Body.Close()
if errr != nil {
dlog.Errorf("format of data is wrong||input=%+v||error=%+v\n", input, errj)
return -1, errr
}
```go
response, errr := client.Do(request)
if errr != nil {
dlog.Errorf("format of data is wrong||input=%+v||error=%+v\n", input, errj)
return -1, errr
}
defer response.Body.Close()
``
#1
更多评论
```go
response, errr := client.Do(request)
if errr != nil {
dlog.Errorf("format of data is wrong||input=%+v||error=%+v\n", input, errj)
return -1, errr
}
defer response.Body.Close()
```
#2
贴出的部分不好判断,应该是缺少参数,在包里面调用send的时候response就被关闭了。
你可以输出一下errr.Error()。把defer部分先改成
`defer func(){response.Body.Close()}`
#3