Cacheable

A cacheable response is an HTTP response that can be cached, that is stored to be retrieved and used later, saving a new request to the server. Not all HTTP responses can be cached; these are the constraints for an HTTP response to be cacheable:

Note that some requests with non-cacheable responses to a specific URI may invalidate previously cached responses from the same URI. For example, a PUT to /pageX.html will invalidate all cached responses to GET or HEAD requests to /pageX.html.

When both the method of the request and the status of the response are cacheable, the response to the request can be cached:

http
GET /pageX.html HTTP/1.1
(…)

200 OK
(…)

The response to a PUT request cannot be cached. Moreover, it invalidates cached data for requests to the same URI using HEAD or GET methods:

http
PUT /pageX.html HTTP/1.1
(…)

200 OK
(…)

The presence of the Cache-Control header with a particular value in the response can prevent caching:

http
GET /pageX.html HTTP/1.1
(…)

200 OK
Cache-Control: no-cache
(…)

See also