HTTP 204 No Content vs 412 Precondition Failed
HTTP 204 (No Content) is a 2xx Success response, while 412 (Precondition Failed) is a 4xx Client Error response. 204 indicates that the server successfully processed the request but is not returning any content. Common for DELETE operations and form submissions that don't need a response body. In contrast, 412 means that one or more conditions in the request headers (If-Match, If-Unmodified-Since) evaluated to false.
Descrição
The server successfully processed the request but is not returning any content. Common for DELETE operations and form submissions that don't need a response body.
Quando você o vê
After DELETE requests, PUT updates where no body is needed, or CORS preflight responses.
Como corrigir
No fix needed. The action was successful; there is simply no content to return.
Descrição
One or more conditions in the request headers (If-Match, If-Unmodified-Since) evaluated to false.
Quando você o vê
When using conditional requests with ETags and the resource has changed.
Como corrigir
Refresh the ETag/Last-Modified value and retry with updated preconditions.
Diferenças principais
204 is a 2xx Success response, while 412 is a 4xx Client Error response.
HTTP 204: The server successfully processed the request but is not returning any content. Common for DELETE operations and form submissions that don't need a response body.
HTTP 412: One or more conditions in the request headers (If-Match, If-Unmodified-Since) evaluated to false.
You encounter 204 when after DELETE requests, PUT updates where no body is needed, or CORS preflight responses.
You encounter 412 when when using conditional requests with ETags and the resource has changed.
Quando usar qual
For 204 (No Content): No fix needed. The action was successful; there is simply no content to return. For 412 (Precondition Failed): Refresh the ETag/Last-Modified value and retry with updated preconditions.