422

Unprocessable Content

Officiellement,
En raison d'une erreur sémantique, la demande n'a pas pu être traitée.

Explication générale du code d'état 422

Ce bloc de texte n'est malheureusement disponible qu'en anglais.

The HTTP status code 422 Unprocessable Content is usually returned when the server received the client's request but could not process it due to a semantic error.

This essentially means that the client's request was not understood or accepted by the server because it may have been incomplete or incorrect. A common example of this is when the client attempts to send a form request to the server, but the form field was not filled in correctly.

The server will usually also send back a message in the body of the response giving more details about why the request is unprocessable. It is then up to the client to read and correct this information in order to make a successful request to the server.

Spécification du code d'état HTTP 422

422 Unprocessable Content signifie que le serveur comprend le type de contenu de l'entité de la demande (le code d'état 415 (Unsupported Media Type) est donc inapproprié) et que la syntaxe de l'entité de la demande est correcte (le code d'état 400 (Bad Request) est donc inapproprié), mais qu'il n'a pas été en mesure de traiter les instructions qu'elle contient. Par exemple, cette condition d'erreur peut se produire si le corps d'une demande XML contient des instructions XML bien formées (c'est-à-dire syntaxiquement correctes), mais sémantiquement erronées.

Source / Citation de : Le code d'état HTTP 422 Unprocessable Content est spécifié par la section 11.2 de RFC4918.

Comment lancer un code d'état 422 avec PHP ?

Pour lancer le code d'état HTTP 422 sur une page web, on peut utiliser la fonction PHP http_response_code. La syntaxe est la suivante : http_response_code(422) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Teste le code d'état HTTP 422

Pour pouvoir afficher le code de statut HTTP (dans ce cas 422 Unprocessable Content) et d'autres informations côté client, il faut ouvrir la console de développement avec F12. Ensuite, il faut naviguer vers l'onglet "Réseau". La page peut maintenant être ouverte, la page web (exemple index.php) doit être visible dans l'onglet réseau. Il faut la sélectionner et choisir ensuite le domaine Herder. L'utilisateur voit alors le résultat suivant :

Code d'état 422 Unprocessable Content
Aperçu
URL: https://http-statuscode.com/errorCodeExample.php?code=422
Statut: 422 Unprocessable Content
Ceux-ci: Network
Adresse IP: XX.XX.XX.XX
Code d'état 422 Unprocessable Content

Comment créer une page d'erreur personnalisée pour le code d'état 422 ?

Créer sa propre page d'erreur 422 Unprocessable Content est relativement facile, aussi bien avec le serveur web "Apache" qu'avec le serveur web "NGINX".

Apache Webserver

Le serveur web "Apache" est l'un des serveurs web les plus répandus sur Internet. Pour créer sa propre page d'erreur 422 Unprocessable Content dans "Apache", il faut effectuer la modification suivante dans le fichier suivant.

File: .htaccess
ErrorDocument 422 /errors/422.html

NGINX Webserver

Tout comme le serveur web "Apache", "NGINX" est également très répandu sur Internet. Pour créer sa propre page d'erreur 422 Unprocessable Content dans "NGINX", il faut effectuer la modification suivante dans le fichier suivant.

File: sites-enabled/default
error_page 422 /422.html;
location = /422.html {
    root /usr/share/nginx/html;
    internal;
}

Compatibilité du navigateur avec le code d'état 422

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Les constantes dans les langages de programmation

http.StatusUnprocessableEntity
Response::HTTP_UNPROCESSABLE_ENTITY
http.HTTPStatus.UNPROCESSABLE_ENTITY
:unprocessable_entity
Auteur: Tony Brüser
Auteur: Tony Brüser

Tony Brüser est un développeur web enthousiaste avec une prédilection pour les codes de statut HTTP.

LinkedInGitHub