Code réponse HTTP
On this page… (hide)
- 1. Réponse Informatives
- 1.1 100 Continue
- 1.2 101 Switching Protocols
- 1.3 102 Processing (WebDAV)
- 1.4 103 Early Hints
- 2. Réponse de succès
- 2.1 200 OK
- 2.2 201 Created
- 2.3 202 Accepted
- 2.4 203 Non-Authoritative Information
- 2.5 204 No Content
- 2.6 205 Reset Content
- 2.7 206 Partial Content
- 2.8 207 Multi-Status (WebDAV)
- 2.9 208 Already Reported (WebDAV)
- 2.10 226 IM Used (HTTP Delta encoding)
- 3. Messages de redirection
- 3.1 300 Multiple Choices
- 3.2 301 Moved Permanently
- 3.3 302 Found
- 3.4 303 See Other
- 3.5 304 Not Modified
- 3.6 305 Use Proxy
- 3.7 306 unused
- 3.8 307 Temporary Redirect
- 3.9 308 Permanent Redirect
- 4. Réponses d’erreur côté client
- 4.1 400 Bad Request
- 4.2 401 Unauthorized
- 4.3 402 Payment Required Expérimental
- 4.4 403 Forbidden
- 4.5 404 Not Found
- 4.6 405 Method Not Allowed
- 4.7 406 Not Acceptable
- 4.8 407 Proxy Authentication Required
- 4.9 408 Request Timeout
- 4.10 409 Conflict
- 4.11 410 Gone
- 4.12 411 Length Required
- 4.13 412 Precondition Failed
- 4.14 413 Payload Too Large
- 4.15 414 URI Too Long
- 4.16 415 Unsupported Media Type
- 4.17 416 Range Not Satisfiable
- 4.18 417 Expectation Failed
- 4.19 418 I’m a teapot
- 4.20 421 Misdirected Request
- 4.21 422 Unprocessable Entity (WebDAV)
- 4.22 423 Locked (WebDAV)
- 4.23 424 Failed Dependency (WebDAV)
- 4.24 425 Too Early Expérimental
- 4.25 426 Upgrade Required
- 4.26 428 Precondition Required
- 4.27 429 Too Many Requests
- 4.28 431 Request Header Fields Too Large
- 4.29 451 Unavailable For Legal Reasons
- 5. Réponses d’erreur côté serveur
- 5.1 500 Internal Server Error
- 5.2 501 Not Implemented
- 5.3 502 Bad Gateway
- 5.4 503 Service Unavailable
- 5.5 504 Gateway Timeout
- 5.6 505 HTTP Version Not Supported
- 5.7 506 Variant Also Negotiates
- 5.8 507 Insufficient Storage (WebDAV)
- 5.9 508 Loop Detected (WebDAV)
- 5.10 510 Not Extended
- 5.11 511 Network Authentication Required
1. Réponse Informatives
1.1 100 Continue
Cette réponse intermédiaire indique que tout est OK pour le moment et que le client peut continuer sa requête ou l’ignorer si celle-ci est déjà finie.
1.2 101 Switching Protocols
Ce code est envoyé en réponse à un en-tête de requête Upgrade de la part du client et indique le protocole sur lequel passe le serveur.
1.3 102 Processing (WebDAV)
Ce code indique que le serveur a reçu et est en train de traiter la requête mais qu’une réponse n’est pas encore disponible.
1.4 103 Early Hints
Ce code de statut est conçu pour être utilisé avec l’en-tête Link, ce qui permet à l’agent utilisateur de commencer le préchargement des ressources tandis que le serveur prépare une réponse.
2. Réponse de succès
2.1 200 OK
La requête a réussi. La signification du succès peut varier selon la méthode HTTP :
2.2 201 Created
La requête a réussi et une nouvelle ressource a été créée en guise de résultat. Il s’agit typiquement de la réponse envoyée après une requête PUT ou POST.
2.3 202 Accepted
La requête a été reçue mais n’a pas encore été traitée. C’est une réponse évasive, ce qui signifie qu’il n’y a aucun moyen en HTTP d’envoyer une réponse asynchrone ultérieure indiquant le résultat issu du traitement de la requête. Elle est destinée aux cas où un autre processus ou serveur gère la requête, et peut être utile pour faire du traitement par lots.
2.4 203 Non-Authoritative Information
Ce code de réponse signifie que l’ensemble de méta-informations renvoyé n’est pas exactement l’ensemble disponible sur le serveur d’origine, mais plutôt un ensemble collecté à partir d’une copie locale ou tierce. Ce code est utilisé la plupart du temps par les serveurs miroirs ou de sauvegarde d’une autre ressource. À l’exception de cette condition, une réponse 200 OK est préférable.
2.5 204 No Content
Il n’y a pas de contenu à envoyer pour cette requête, mais les en-têtes peuvent être utiles. L’agent utilisateur peut mettre à jour ses en-têtes en cache pour cette ressource en les remplaçant par les nouveaux.
2.6 205 Reset Content
Indique à l’agent utilisateur de réinitialiser le document qui a envoyé cette requête.
2.7 206 Partial Content
Ce code de réponse est utilisé en réaction à l’en-tête Range envoyé par le client pour séparer le téléchargement en plusieurs flux.
2.8 207 Multi-Status (WebDAV)
Une réponse multi-statut donne des informations sur des ressources multiples dans les situations où les codes de statut multiples sont appropriés.
2.9 208 Already Reported (WebDAV)
Utilisé au sein d’un élément de réponse DAV <dav:propstat> pour éviter d’énumérer à maintes reprises les membres internes de bindings multiples vers la même collection.
2.10 226 IM Used (HTTP Delta encoding)
Le serveur a exécuté une requête GET pour la ressource, et la réponse est une représentation du résultat d’une ou plusieurs manipulations d’instance appliquées à l’instance courante.
3. Messages de redirection
3.1 300 Multiple Choices
La requête a plusieurs réponses possibles. L’agent utilisateur ou l’utilisateur doit choisir l’une d’entre elles. Il n’y a pas de manière standard pour choisir l’une de ces réponses mais des liens HTML vers les choix sont recommandés afin de permettre à l’utilisateur de choisir.
3.2 301 Moved Permanently
Ce code de réponse signifie que l’URL de la ressource demandée a été modifiée. Une nouvelle URL est donnée dans la réponse.
3.3 302 Found
Ce code de réponse indique que l’URI de la ressource demandée a été modifiée temporairement. De nouveaux changements dans l’URI pourront être effectués ultérieurement. Par conséquent, cette même URI devrait être utilisée par le client pour les requêtes futures.
3.4 303 See Other
Le serveur a envoyé cette réponse pour diriger le client vers la ressource demandée via un autre URI en utilisant une requête GET.
3.5 304 Not Modified
Ce code est utilisé pour des raisons de cache. Il indique au client que la réponse n’a pas été modifiée. De fait, le client peut continuer à utiliser la même version de la réponse, mise en cache.
3.6 305 Use Proxy
(Obsolète)
A été défini dans une version antérieure de la spécification HTTP pour indiquer qu’une réponse sollicitée doit transiter par un proxy. Ce code est aujourd’hui périmé pour des raisons de sécurité relatives à la configuration d’un proxy.
3.7 306 unused
Ce code de réponse n’est plus en service, son usage est actuellement réservé. Il était utilisé dans une version précédente de la spécification HTTP/1.1.
3.8 307 Temporary Redirect
Le serveur a envoyé cette réponse pour rediriger le client afin d’obtenir la ressource demandée via un autre URI, en utilisant la même méthode que précédemment. Ce code a la même sémantique que le code 302 Found, à l’exception près que l’agent utilisateur ne doit pas changer la méthode HTTP utilisée : si POST était utilisé dans la première requête, alors POST doit être utilisé dans la seconde.
3.9 308 Permanent Redirect
Cela signifie que la ressource a été déplacée de manière permanente vers une autre URI, spécifiée dans l’en-tête de réponse HTTP Location:. Ce code a la même sémantique que le code 301 Moved Permanently, à l’exception près que l’agent utilisateur ne doit pas changer la méthode HTTP utilisée : si POST était utilisé dans la première requête, alors POST doit être utilisé dans la seconde.
4. Réponses d’erreur côté client
4.1 400 Bad Request
Cette réponse indique que le serveur n’a pas pu comprendre la requête à cause d’une syntaxe invalide.
4.2 401 Unauthorized
Bien que le standard HTTP indique « non-autorisé », la sémantique de cette réponse correspond à « non-authentifié » : le client doit s’authentifier afin d’obtenir la réponse demandée.
4.3 402 Payment Required Expérimental
Ce code de réponse est réservé à une utilisation future. Le but initial justifiant la création de ce code était l’utilisation de systèmes de paiement numérique. Cependant, il n’est pas utilisé actuellement et aucune convention standard n’existe à ce sujet.
4.4 403 Forbidden
Le client n’a pas les droits d’accès au contenu, donc le serveur refuse de donner la véritable réponse.
4.5 404 Not Found
Le serveur n’a pas trouvé la ressource demandée. Ce code de réponse est principalement connu pour son apparition fréquente sur le web.
4.6 405 Method Not Allowed
La méthode de la requête est connue du serveur mais n’est pas prise en charge pour la ressource cible. Par exemple, une API peut ne pas autoriser l’utilisation du verbe DELETE pour supprimer une ressource.
4.7 406 Not Acceptable
Cette réponse est envoyée quand le serveur web, après une négociation de contenu géré par le serveur, ne trouve rien qui satisfasse les critères donnés par l’agent utilisateur.
4.8 407 Proxy Authentication Required
Similaire au code 401, sauf que l’authentification doit être effectuée au travers d’un proxy.
4.9 408 Request Timeout
Cette réponse est envoyée via une connexion en attente par certains serveurs, même sans qu’il y ait de requête préalable de la part du client. Cela signifie que le serveur aimerait fermer cette connexion inutilisée. Cette réponse est bien plus utilisée depuis que certains navigateurs, comme Chrome, Firefox 27+ ou IE9, utilisent des mécanismes de préconnexion HTTP pour accélérer la navigation. Notez aussi que certains serveurs ferment simplement la connexion sans même envoyer ce message.
4.10 409 Conflict
Cette réponse est envoyée quand une requête entre en conflit avec l’état actuel du serveur.
4.11 410 Gone
Cette réponse est envoyée lorsque le contenu demandé a été supprimé de façon permanente du serveur, sans nouvelle adresse. Les clients doivent vider les caches et liens associés à cette ressource. La spécification HTTP a conçu ce code de statut pour qu’il soit utilisé pour des « services promotionnels limités dans le temps ». Les API ne devraient pas se sentir obligées d’indiquer que des ressources ont été supprimées avec ce code de statut.
4.12 411 Length Required
Le serveur a rejeté la requête, car le champ d’en-tête Content-Length n’est pas défini et le serveur l’impose.
4.13 412 Precondition Failed
Le client a indiqué des préconditions dans ses en-têtes que le serveur ne remplit pas.
4.14 413 Payload Too Large
L’entité demandée est plus grosse que la limite définie par le serveur. Le serveur peut fermer la connexion ou retourner un champ d’en-tête Retry-After.
4.15 414 URI Too Long
L’URI interrogé par le client est plus long que ce que le serveur est en mesure d’interpréter.
4.16 415 Unsupported Media Type
Le format média des données demandées n’est pas supporté par le serveur, donc le serveur rejette la requête.
4.17 416 Range Not Satisfiable
La plage spécifiée par le champ d’en-tête Range de la requête ne peut pas être satisfaite ; il est possible que la plage excède la taille des données provenant de l’URI ciblé.
4.18 417 Expectation Failed
Ce code de réponse signifie que les attentes indiquées par le champ d’en-tête de requête Expect n’ont pas pu être satisfaites par le serveur.
4.19 418 I’m a teapot
Le serveur refuse de brasser du café avec une théière.
4.20 421 Misdirected Request
La requête a été envoyée à un serveur incapable de produire une réponse. Ce code peut être envoyé par un serveur qui n’a pas été configuré pour produire des réponses sujettes à la combinaison de schémas et d’identités incluse dans l’URI de la requête.
4.21 422 Unprocessable Entity (WebDAV)
La requête a bien été constituée mais n’a pas pu être traitée à cause d’erreurs sémantiques.
4.22 423 Locked (WebDAV)
La ressource qui est en train d’être consultée est verrouillée.
4.23 424 Failed Dependency (WebDAV)
La requête a échoué à cause de l’échec d’une requête précédente.
4.24 425 Too Early Expérimental
Indiquer que le serveur ne souhaite pas traiter une requête qui pourrait être rejouée.
4.25 426 Upgrade Required
Le serveur refuse de traiter la requête en utilisant le protocole actuel mais peut accepter de le faire si le client opte pour un autre protocole. Le serveur doit envoyer un en-tête Upgrade dans la réponse 426 pour indiquer le(s) protocole(s) demandé(s) (Section 6.7 de [RFC7230]).
4.26 428 Precondition Required
Le serveur d’origine impose que la requête soit conditionnelle. Ceci est prévu pour empêcher le problème de ‘perte de mise à jour’, où un client récupère l’état d’une ressource avec GET, le modifie, et le renvoie au serveur avec PUT pendant qu’un tiers modifie l’état du serveur, ce qui conduit à un conflit.
4.27 429 Too Many Requests
L’utilisateur a émis trop de requêtes dans un laps de temps donné.
4.28 431 Request Header Fields Too Large
Le serveur n’est pas disposé à traiter la requête, car les champs d’en-tête sont trop longs. La requête peut être renvoyée après avoir réduit la taille des en-têtes.
4.29 451 Unavailable For Legal Reasons
L’utilisateur tente d’accéder à une ressource illégale, telle qu’une page censurée par un gouvernement.
5. Réponses d’erreur côté serveur
5.1 500 Internal Server Error
Le serveur a rencontré une situation qu’il ne sait pas traiter.
5.2 501 Not Implemented
La méthode de requête n’est pas supportée par le serveur et ne peut pas être traitée. Les seules méthodes que les serveurs sont tenus de prendre en charge (et donc pour lesquelles ils ne peuvent pas renvoyer ce code) sont GET et HEAD.
5.3 502 Bad Gateway
Cette réponse d’erreur signifie que le serveur, alors qu’il fonctionnait en tant que passerelle pour recevoir une réponse nécessaire pour traiter la requête, a reçu une réponse invalide.
5.4 503 Service Unavailable
Le serveur n’est pas prêt pour traiter la requête. Les causes les plus communes sont que le serveur est éteint pour maintenance ou qu’il est surchargé. Notez qu’avec cette réponse, une page ergonomique peut expliquer le problème. Ces réponses doivent être utilisées temporairement et le champ d’en-tête Retry-After doit, dans la mesure du possible, contenir une estimation de l’heure de reprise du service. Le webmestre doit aussi faire attention aux en-têtes de mise en cache qui sont envoyés avec cette réponse (qui ne doivent typiquement pas être mis en cache).
5.5 504 Gateway Timeout
Cette réponse d’erreur est renvoyée lorsque le serveur sert de passerelle et ne peut pas donner de réponse dans les temps.
5.6 505 HTTP Version Not Supported
La version de HTTP utilisée dans la requête n’est pas prise en charge par le serveur.
5.7 506 Variant Also Negotiates
Le serveur a une erreur de configuration interne : la négociation de contenu transparente pour la requête aboutit à une dépendance circulaire.
5.8 507 Insufficient Storage (WebDAV)
Le serveur a une erreur de configuration interne : la ressource sélectionnée est configurée pour participer elle-même à une négociation de contenu transparente, et n’est par conséquent pas un nÅ“ud terminal valable dans le processus de négociation.
5.9 508 Loop Detected (WebDAV)
Le serveur a détecté une boucle infinie en traitant la requête.
5.10 510 Not Extended
Des extensions supplémentaires sont requises afin que le serveur puisse satisfaire la requête.
5.11 511 Network Authentication Required
Le code de statut 511 indique que le client doit s’authentifier afin de pouvoir accéder au réseau.
