← Códigos HTTP

428 Precondition Required

El servidor de origen requiere que la solicitud sea condicional.

Su uso típico es evitar el problema de “actualización perdida”, donde un cliente obtiene el estado de un recurso, lo modifica, y lo envía de vuelta al servidor, cuando mientras tanto una tercera parte ha modificado el estado en el servidor, llevando a un conflicto. Al requerir que las solicitudes sean condicionales, el servidor puede asegurar que los clientes están trabajando con las copias correctas.

Las respuestas que usan este código de estado DEBERÍAN explicar cómo reenviar la solicitud exitosamente. Por ejemplo:

HTTP/1.1 428 Precondition Required
Content-Type: text/html

<html>
  <head>
    <title>Precondition Required</title>
  </head>
  <body>
    <h1>Precondition Required</h1>
    <p>This request is required to be conditional; try using "If-Match".</p>
  </body>
</html>

Las respuestas con el código de estado 428 NO DEBEN ser almacenadas por un caché.


Referencias por lenguaje

  • .NET HTTP Status Enum HttpStatusCode.PreconditionRequired
  • Rust HTTP Status Constant http::StatusCode::PRECONDITION_REQUIRED
  • Go HTTP Status Constant http.StatusPreconditionRequired
  • Symfony HTTP Status Constant Response::HTTP_PRECONDITION_REQUIRED