为什么http请求完后要使用response.Body.Close() 发表于 2018-07-30 背景以下是常见的http请求逻辑,在错误检查后使用defer resp.Body.Close(),问题来了,response.Body是否必须关闭?不关闭会带来什么问题? 12345678client := http.DefaultClientresp, err := client.Do(req)if err != nil { return nil, err}defer resp.Body.Close()... 解析如果请求后没有进行response.Body.Close(),会产生资源泄漏(一个连接占用一个文件描述符,不断开会产生大量无用的连接,浪费系统资源) 参考What could happen if I don’t close response.Body in golang?