タグ

ブックマーク / ikawaha.hateblo.jp (1)

  • たぶんみんな間違えてる golang の HTTP Respose Body の閉じ方 - 押してダメならふて寝しろ

    元ネタはこちらのブログ. 50 Shades of Go: Traps, Gotchas, and Common Mistakes for New Golang Devs あまりにも衝撃的でした.HTTP Response の Body を閉じるとき,たぶん,みんなこう書いてると思うんだけど, 誤)エラーがないかチェックしてから閉じるようにしておく resp, err := http.Get("http://golang.org") if err != nil { return err } defer resp.Body.Close() エラーがあっても,Response が nil じゃないときがあるらしい.なので,正しい閉じ方はこう. 正)Response が nil じゃなかったら閉じるようにしてからエラーをチェックする resp, err := http.Get("https://

    たぶんみんな間違えてる golang の HTTP Respose Body の閉じ方 - 押してダメならふて寝しろ
    yosida95
    yosida95 2015/06/04
    net/http のコード読んでみたけれど、 redirectFailed が true になるのは shouldRedirect が true になる時で、その時は 378 行目ですでに Body.Close されているからこのようにする必要はないと思うのですが、いかがでしょうか
  • 1