...

Package httpresponse

import "golang.org/x/tools/go/analysis/passes/httpresponse"
Overview
Index

Overview ▾

Package httpresponse defines an Analyzer that checks for mistakes using HTTP responses.

Index ▾

Package files

httpresponse.go

Constants

const Doc = `check for mistakes using HTTP responses

A common mistake when using the net/http package is to defer a function
call to close the http.Response Body before checking the error that
determines whether the response is valid:

    resp, err := http.Head(url)
    defer resp.Body.Close()
    if err != nil {
        log.Fatal(err)
    }
    // (defer statement belongs here)

This checker helps uncover latent nil dereference bugs by reporting a
diagnostic for such mistakes.`

Variables

var Analyzer = &analysis.Analyzer{
    Name:     "httpresponse",
    Doc:      Doc,
    Requires: []*analysis.Analyzer{inspect.Analyzer},
    Run:      run,
}