Golang lint 修复方法记录

文章目录

lint 错误提示: httpNoBody: http.NoBody should be preferred to the nil request body (gocritic)

错误代码:

req, err := http.NewRequest(http.MethodGet, url, nil)

错误原因:Golang 调用 http.NewRequest(method, url string, body io.Reader) 方法,没有请求体时,对 body 参数传了 nil。

修复方法:将 NewRequest 第三个参数 nil 改为 http.NoBody , NoBody 是一个实现了 io.Reader 接口的对象。

req, err := http.NewRequest(http.MethodGet, url, http.NoBody)

lint 错误提示: ioutilDeprecated: ioutil.ReadAll is deprecated, use io.ReadAll instead (gocritic)

错误代码:

b, err := ioutil.ReadAll(resp.Body)

错误原因:Golang 1.16 开始 io/ioutil 包被弃用,鼓励新代码使用包 io 和 os 中的相应实现。

修复方法:

ioutil.ReadFile(...)

// 改为

os.ReadFile(...)
ioutil.ReadAll(...)

// 改为

io.ReadAll(...)

也可以看看


全国大流量卡免费领

19元月租ㆍ超值优惠ㆍ长期套餐ㆍ免费包邮ㆍ官方正品