为什么http.NotFound()将请求作为参数?

时间:2019-09-26 16:06:36

标签: go

http.NotFound()方法具有the following signature

func NotFound(w ResponseWriter, r *Request)

*Request参数的用途是/目的是什么?

当前该值似乎尚未使用,我发现很难想象它过去可能被用作什么。

1 个答案:

答案 0 :(得分:3)

此签名是标准的http.Handler签名。

NotFound显然不使用请求:

// NotFound replies to the request with an HTTP 404 not found error.
func NotFound(w ResponseWriter, r *Request) { Error(w, "404 page not found", StatusNotFound) }

但是,通过坚持标准接口,它可以与http包的其余部分进行互操作:

http.HandleFunc("/favicon.ico", http.NotFound)