304 Not Modified

A 304 response confirms that a conditional request can reuse its stored representation.

  • caching
  • conditional requests
  • status codes

Meaning

304 Not Modified answers a conditional GET or HEAD when a precondition allows reuse of a stored response. The standardized QUERY method can also receive 304 for a conditional request. The response transfers selected metadata without retransmitting the stored representation.

GET /manual HTTP/1.1
Host: example.invalid
If-None-Match: "guide-v3"

Expected result: if the selected representation still matches the entity tag, the server can return 304; otherwise it returns the normal selected response.

HTTP/1.1 304 Not Modified
ETag: "guide-v3"
Cache-Control: max-age=300

Expected result: the recipient reuses its stored response and updates applicable stored metadata. No response content follows the 304.

Constraints

304 is not a redirect and is useful only when the recipient has a corresponding stored response. A client without that representation needs a normal success response with content.

Primary sources