The HTTP HEAD
method requests the headers that are returned if the specified resource would be requested with an HTTP {{HTTPMethod("GET")}} method. Such a request can be done before deciding to download a large resource to save bandwidth, for example.
A response to a HEAD
method should not have a body. If so, it must be ignored. Even so, {{glossary("Entity header", "entity headers")}} describing the content of the body, like {{HTTPHeader("Content-Length")}} may be included in the response. They don't relate to the body of the HEAD
response, which should be empty, but to the body of similar request using the {{HTTPMethod("GET")}} method would have returned as a response.
If the result of a HEAD
request shows that a cached resource after a {{HTTPMethod("GET")}} request is now outdated, the cache is invalidated, even if no GET
request has been made.
Request has body | No |
---|---|
Successful response has body | No |
{{Glossary("Safe")}} | Yes |
{{Glossary("Idempotent")}} | Yes |
{{Glossary("Cacheable")}} | Yes |
Allowed in HTML forms | No |
Syntax
HEAD /index.html
Specifications
Specification | Title |
---|---|
{{RFC("7231", "HEAD", "4.3.2")}} | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
Browser compatibility
To contribute to this compatibility data, please write a pull request against this file: https://github.com/mdn/browser-compat-data/blob/master/http/methods.json.
{{Compat}}
See also
- {{HTTPMethod("GET")}}