登录
首页 >  Golang >  Go问答

是否需要关闭 resp.Body 如果我不打算使用响应?

来源:stackoverflow

时间:2024-02-23 11:03:26 465浏览 收藏

各位小伙伴们,大家好呀!看看今天我又给各位带来了什么文章?本文标题《是否需要关闭 resp.Body 如果我不打算使用响应?》,很明显是关于Golang的文章哈哈哈,其中内容主要会涉及到等等,如果能帮到你,觉得很不错的话,欢迎各位多多点评和分享!

问题内容

我正在提出请求,但不需要回复。如果我这样做会产生任何问题吗?

client = &http.Client{
    Timeout: time.Duration(15 * time.Second),
}
...
...
_, err := client.Do(req)

解决方案


引用Client.Do()的文档

所以,是的,如果没有错误,您总是必须关闭它。您还需要在关闭之前将正文读至 eof。引用自http.Response

如果你不需要主体,你可以像这样丢弃它:

resp, err := client.Do(req)
if err != nil {
    // handle error and return
    return
}
defer resp.Close()
io.Copy(ioutil.Discard, resp.Body)

如果有错误,请参阅相关问题:Do we need to close the response object if an error occurs while calling http.Get(url)?

今天关于《是否需要关闭 resp.Body 如果我不打算使用响应?》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>