Développement

Codes de statut HTTP

Les codes HTTP à connaître par cœur : 2xx succès, 3xx redirections, 4xx erreurs client, 5xx erreurs serveur.

Gratuit Mis à jour le 11 septembre 2026

2xx — Succès

Code Signification
200 OK
201 Created (ressource créée)
204 No Content (succès sans corps)

3xx — Redirection

Code Signification
301 Moved Permanently
302 Found (redirection temporaire)
304 Not Modified (cache valide)
308 Permanent Redirect (conserve la méthode)

4xx — Erreur client

Code Signification
400 Bad Request
401 Unauthorized (non authentifié)
403 Forbidden (authentifié mais pas autorisé)
404 Not Found
409 Conflict
422 Unprocessable Entity (validation)
429 Too Many Requests

5xx — Erreur serveur

Code Signification
500 Internal Server Error
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout

401 = « je ne sais pas qui tu es » · 403 = « je sais qui tu es, mais non ».

Idempotence par méthode HTTP

Méthode Idempotente ? Usage
GET oui Lire une ressource
PUT oui Remplacer entièrement une ressource
DELETE oui Supprimer (rejouer la requête ne change rien de plus)
POST non Créer une ressource (rejouer = doublon possible)
PATCH non (en général) Modifier partiellement

Une méthode idempotente peut être rejouée sans risque après un timeout réseau ; une requête POST échouée doit être rejouée avec prudence (ou une clé d'idempotence côté serveur).

Codes moins courants mais utiles

Code Signification
100 Continue (le client peut poursuivre l'envoi du corps)
206 Partial Content (réponse partielle, ex. téléchargement repris)
226 IM Used
407 Proxy Authentication Required
410 Gone (ressource définitivement supprimée, contrairement à 404)
451 Unavailable For Legal Reasons
501 Not Implemented

410 (Gone) diffère de 404 (Not Found) : 410 indique explicitement que la ressource a existé puis a été retirée volontairement, un signal plus fort pour les moteurs de recherche que "ressource introuvable".

Cache HTTP : les codes et en-têtes liés

Élément Rôle
304 Not Modified Le contenu en cache est toujours valide, pas de nouveau téléchargement
Cache-Control Politique de cache (durée, public/privé, revalidation)
ETag Empreinte du contenu, utilisée pour vérifier s'il a changé
If-None-Match Envoyé par le client avec l'ETag connu, pour déclencher un 304 si rien n'a changé
#Web
naviguer ouvrir Esc fermer