Sobes.tech
Junior

Parlez-moi des codes d'état HTTP.

sobes.tech IA

Réponse de l'IA

Les codes de statut HTTP sont des nombres à trois chiffres renvoyés par le serveur en réponse à une requête du client. Ils indiquent le résultat de la requête et fournissent des informations sur la façon dont le client doit traiter la réponse.

Les codes de statut sont divisés en cinq classes :

  • 1xx — Informatifs : La requête a été acceptée, le traitement se poursuit.
  • 2xx — Réussis : La requête a été traitée avec succès.
  • 3xx — Redirection : Des actions supplémentaires sont nécessaires pour compléter la requête.
  • 4xx — Erreur du client : La requête contient une erreur de syntaxe ou ne peut pas être traitée.
  • 5xx — Erreur du serveur : Le serveur n'a pas pu traiter la requête correctement.

Voici quelques codes de statut courants :

Code Description Classe
200 OK Réussis
201 Créé Réussis
204 Aucun contenu Réussis
301 Déplacé définitivement Redirection
302 Trouvé Redirection
400 Requête incorrecte Erreur du client
401 Non autorisé Erreur du client
403 Interdit Erreur du client
404 Non trouvé Erreur du client
500 Erreur interne du serveur Erreur du serveur
503 Service indisponible Erreur du serveur

Lors du test d'une API, il est important de vérifier que les codes de statut corrects sont renvoyés en réponse à diverses requêtes (réussie, avec erreurs de validation, avec données incorrectes, etc.) pour assurer un comportement prévisible du système.

Par exemple, lors de la création d'une ressource, on attend un 201, lors de la récupération réussie de données, un 200, lors d'une requête pour une ressource inexistante, un 404, et en cas d'erreur serveur, un 500.

Exemple de vérification du code de statut dans un test automatique (en Python avec requests) :

import requests

url = "https://jsonplaceholder.typicode.com/posts/1"
response = requests.get(url)

# Vérifier que la requête a renvoyé le statut 200 OK
assert response.status_code == 200