Quelle est la différence entre les méthodes PUT et POST ? Comment se comportent-elles lors de la réenvoi d'une même requête ? Que fait PATCH ?
sobes.tech IA
Réponse de l'IA
Les méthodes HTTP PUT et POST diffèrent par leur sémantique et leur comportement:
-
PUT — méthode idempotente, utilisée pour une mise à jour complète d'une ressource à l'URL spécifiée. La resoumission de la même requête PUT ne changera pas le résultat, car la ressource sera écrasée avec les mêmes données.
-
POST — méthode non idempotente, généralement utilisée pour créer de nouvelles ressources ou effectuer des actions. La resubmission d'une requête POST peut entraîner la création de doublons ou la répétition de l'opération.
-
PATCH — utilisé pour une mise à jour partielle de la ressource, en envoyant uniquement les champs modifiés. Contrairement à PUT, qui remplace toute la ressource, PATCH applique des modifications à l'objet existant.
Exemple:
PUT /users/123
{
"name": "Иван",
"age": 30
}
PATCH /users/123
{
"age": 31
}
POST /users
{
"name": "Иван",
"age": 30
}
Renvoyer PUT avec les mêmes données ne changera pas la ressource, renvoyer POST créera un nouvel utilisateur, et renvoyer PATCH mettra à jour l'âge à nouveau.