gocraft/web — pull request #29 by rickb777 (2014-08-24 09:28:17+00:00)
Title: Added support for HEAD requests.

HEAD requests are principally useful for testing that an endpoint is reachable (is the server working?) and testing that the parameters passed in a request are coherent (is this a good or a bad request?).

It is important to support HEAD requests, without which the HTTP implementation is not complete.

The Go net/http stack appears to implement HEAD requests via a 'devnull' writer. This makes it easy for implementers because an existing get-request handler can also be used for the equivalent head-requests. Response output is sent to the client in the case of GET requests, but dropped in a black hole in the case of HEAD requests; this meets the requirements of the HTTP RFC.