Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

412 Precondition Failed

Le code de statut de réponse d'erreur client HTTP 412 Precondition Failed indique que l'accès à la ressource cible a été refusé. Cela se produit avec les requêtes conditionnelles sur des méthodes autres que GET ou HEAD, lorsque la condition définie par les en-têtes If-Unmodified-Since ou If-Match n'est pas remplie. Dans ce cas, la requête (généralement un téléversement ou une modification de ressource) ne peut pas être effectuée et cette réponse d'erreur est renvoyée.

Statut

http
412 Precondition Failed

Exemples

Précondition non remplie

http
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
ETag: W/"0815"

Éviter les conflits d'édition

Grâce aux en-têtes ETag et If-Match, il est possible d'éviter les conflits ou les collisions d'édition. Par exemple, lors de la modification de certaines pages wiki, le contenu est haché et placé dans un ETag dans les réponses réussies :

http
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"

Lors de l'enregistrement des modifications d'une page wiki (envoi de données), la requête POST contiendra l'en-tête If-Match avec la valeur d'ETag que le client a enregistrée lors de la dernière édition afin de vérifier la fraîcheur de la ressource sur le serveur :

http
If-Match: "33a64df551425fcc55e4d42a148795d9f25f89d4"

Si les deux empreintes ne correspondent pas, cela signifie que le document a été édité entre-temps et une erreur 412 Precondition Failed est déclenchée.

Spécifications

Specification
HTTP Semantics
# status.412

Voir aussi