logo

Présentation de l'API REST

R. représentatif S état T Le transfert (REST) ​​est un style architectural qui définit un ensemble de contraintes à utiliser pour créer des services Web. API REST est une manière d'accéder aux services web de manière simple et flexible sans aucun traitement.

API REST

La technologie REST est généralement préférée à la technologie SOAP (Simple Object Access Protocol) plus robuste, car REST utilise moins de bande passante, simple et flexible, ce qui la rend plus adaptée à l'utilisation d'Internet. Il est utilisé pour récupérer ou donner des informations à partir d’un service Web. Toutes les communications effectuées via l'API REST utilisent uniquement une requête HTTP.



Fonctionnement: Une requête est envoyée du client au serveur sous la forme d'une URL Web sous forme de requête HTTP GET ou POST ou PUT ou DELETE. Après cela, une réponse revient du serveur sous la forme d'une ressource qui peut être quelque chose comme HTML, XML, Image ou JSON. Mais désormais, JSON est le format le plus populaire utilisé dans les services Web.

Développer la maîtrise de l'API REST Apprenez à intégrer les API REST Python populaires et pratiques dans les applications Web Django avec le parcours de compétences interactif d'Educative. Devenez un intégrateur d'API basé sur Python. Inscrivez-vous sur Educative.io avec le code GEEKS10 pour économiser 10% sur votre abonnement.

Dans HTTP il existe cinq méthodes couramment utilisées dans une architecture basée sur REST, à savoir POST, GET, PUT, PATCH et DELETE. Celles-ci correspondent respectivement aux opérations de création, de lecture, de mise à jour et de suppression (ou CRUD). Il existe d'autres méthodes moins fréquemment utilisées comme OPTIONS et HEAD.

  • OBTENIR: La méthode HTTP GET est utilisée pour lire (ou récupérer) une représentation d’une ressource. Dans le chemin sécurisé, GET renvoie une représentation en XML ou JSON et un code de réponse HTTP de 200 (OK). En cas d'erreur, il renvoie le plus souvent un 404 (NOT FOUND) ou 400 (BAD REQUEST).
  • POSTE: Le verbe POST est le plus souvent utilisé pour créer de nouvelles ressources. Il est notamment utilisé pour créer des ressources subordonnées. C'est-à-dire subordonné à une autre ressource (par exemple parent). En cas de création réussie, renvoyez le statut HTTP 201, en renvoyant un en-tête Location avec un lien vers la ressource nouvellement créée avec le statut HTTP 201.

NOTE: POST n'est ni sûr ni idempotent.

  • METTRE: Il est utilisé pour mise à jour les capacités. Cependant, PUT peut également être utilisé pour créer une ressource dans le cas où l'ID de ressource est choisi par le client plutôt que par le serveur. En d’autres termes, si le PUT concerne un URI qui contient la valeur d’un ID de ressource inexistant. En cas de mise à jour réussie, renvoyez 200 (ou 204 si aucun contenu dans le corps n'est renvoyé) à partir d'un PUT. Si vous utilisez PUT pour la création, renvoyez le statut HTTP 201 en cas de création réussie. PUT n’est pas un fonctionnement sûr mais il est idempotent.
  • CORRECTIF: Il est utilisé pour modifier capacités. La requête PATCH doit uniquement contenir les modifications apportées à la ressource, pas la ressource complète. Cela ressemble à PUT, mais le corps contient un ensemble d'instructions décrivant comment une ressource résidant actuellement sur le serveur doit être modifiée pour produire une nouvelle version. Cela signifie que le corps du PATCH ne doit pas simplement être une partie modifiée de la ressource, mais être contenu dans une sorte de langage de correctif tel que JSON Patch ou XML Patch. PATCH n'est ni sûr ni idempotent.
  • SUPPRIMER: Il est utilisé pour supprimer une ressource identifiée par un URI. En cas de suppression réussie, renvoyez le statut HTTP 200 (OK) avec un corps de réponse.

Idempotence : Une méthode HTTP idempotente est une méthode HTTP qui peut être appelée plusieurs fois sans résultats différents. Peu importe que la méthode soit appelée une seule fois ou dix fois. Le résultat devrait être le même. Encore une fois, cela s'applique uniquement au résultat, pas à la ressource elle-même.

Exemple:

C

Rudyard Kipling si explication




1. a = 4>// It is Idempotence, as final value(a = 4)> >// would not change after executing it multiple> >// times.> 2. a++>// It is not Idempotence because the final value> >// will depend upon the number of times the> >// statement is executed.>

>

>

Demande et réponse

Nous allons maintenant voir comment fonctionnent les requêtes et les réponses pour différents HTTP méthodes. Supposons que nous ayons un API( https://www.techcodeview.com ) pour tous les étudiants, données de gfg.

  • OBTENIR: Demande pour tous les étudiants.
Demande
GET:/api/étudiants
  • POSTE: Demande de publication/création/insertion de données

Demande

POST :/api/étudiants

{nom : Raj}

  • PUT ou PATCH : Demande de mise à jour des données à id=1

Demande

PUT ou PATCH :/api/students/1

{nom : Raj}

  • SUPPRIMER: Demande de suppression de données d'id=1
Demande
SUPPRIMER :/api/étudiants/1

Les services Web RESTful sont très populaires car ils sont légers, hautement évolutifs et maintenables et sont très couramment utilisés pour créer des API pour des applications Web.