Différence entre les requêtes PUT et PATCH

Quelle est la principale différence entre PUT et PATCH demandes, et quand devrions-nous utiliser l'un sur l'autre?

PUT et PATCH sont des verbes HTTP et ils sont tous deux liés à la mise à jour d'une ressource.



Différence principale entre les requêtes PUT et PATCH

La principale différence entre les demandes PUT et PATCH réside dans la façon dont le serveur traite l'entité incluse pour modifier la ressource identifiée par l'URI de demande.


Dans un PUT demande, l'entité incluse est considérée comme une version modifiée de la ressource stockée sur le serveur d'origine, et le client demande que la version stockée soit remplacée.

Avec PATCH, cependant, l'entité incluse contient un ensemble d'instructions décrivant comment une ressource résidant actuellement sur le serveur d'origine doit être modifiée pour produire une nouvelle version.


En outre, une autre différence est que lorsque vous souhaitez mettre à jour une ressource avec PUT request, vous devez envoyer la charge utile complète comme requête alors qu'avec PATCH, vous n'envoyez que les paramètres que vous souhaitez mettre à jour.

En rapport:

Supposons que nous ayons une ressource contenant le prénom et le nom d'une personne.

Si nous voulons changer le prénom, nous envoyons un PUT demande de mise à jour


{ 'first': 'Michael', 'last': 'Angelo' }

Ici, bien que nous ne changions que le prénom, avec PUT demande que nous devons envoyer les deux paramètres en premier et en dernier. En d'autres termes, il est obligatoire d'envoyer à nouveau toutes les valeurs, la charge utile complète.

Lorsque nous envoyons un PATCH demande, cependant, nous n'envoyons que les données que nous souhaitons mettre à jour. En d'autres termes, nous n'envoyons que le prénom à mettre à jour, pas besoin d'envoyer le nom de famille.

Pour cette raison, PATCH la demande nécessite moins de bande passante.