为什么在检查完请求后必须关闭它?

时间:2018-05-11 00:37:34

标签: go

我看过几个例子,你从r.Body读取,然后立即推迟r.Body.Close()。如果我们不关闭它会发生什么?

假设我有一个http.Handler,我在里面解码r.Body的内容是这样的:

func createFeedback(w http.ResponseWriter, r *http.Request) {
    // ... Some code ...
    f := feedback.New()
    if err := json.NewDecoder(r.Body).Decode(f); err != nil {
        return err
    }
    defer r.Body.Close()
    // ... Some more code ...
}

为什么我们要关闭r.Body

0 个答案:

没有答案