Spanish English French German Italian Portuguese
Marketing social

Que signifie API REST

Une API REST (également appelée API RESTful) est une interface de programmation d'application (API ou API Web) qui se conforme aux contraintes du style architectural REST et permet l'interaction avec les services Web RESTful. REST signifie Representational State Transfer et a été créé par l'informaticien Roy Fielding.

Qu'est-ce qu'une API

Une API est un ensemble de définitions et de protocoles permettant de créer et d'intégrer un logiciel d'application. On parle parfois de contrat entre un fournisseur d'informations et un utilisateur d'informations, qui établit le contenu requis par le consommateur (l'appel) et le contenu requis par le producteur (la réponse). Par exemple, la conception de l'API pour un service météorologique peut spécifier que l'utilisateur fournit un code postal et que le producteur répond avec une réponse en 2 parties, la première étant une température élevée et la seconde une température basse.

En d'autres termes, si vous souhaitez interagir avec un ordinateur ou un système pour récupérer des informations ou exécuter une fonction, une API vous aide à communiquer ce que vous voulez à ce système afin qu'il puisse comprendre et répondre à la demande.

Vous pouvez considérer une API comme un médiateur entre les utilisateurs ou les clients et les ressources ou les services Web qu'ils souhaitent obtenir. C'est également un moyen pour une organisation de partager des ressources et des informations tout en maintenant la sécurité, le contrôle et l'authentification, ce qui détermine qui a accès à quoi.

Un autre avantage d'une API est que vous n'avez pas besoin de connaître les détails de la mise en cache : comment votre ressource est récupérée ou d'où elle vient.

Qu'est-ce que le REPOS

REST est un ensemble de contraintes architecturales, pas un protocole ou une norme. Les développeurs d'API peuvent implémenter REST de différentes manières.

Lorsqu'une demande client est effectuée via une API RESTful, elle transmet une représentation de l'état de la ressource au demandeur ou au point de terminaison. Ces informations, ou représentations, sont fournies dans l'un des nombreux formats via HTTP : JSON (Javascript Object Notation), HTML, XLT, Python, PHP ou texte brut. JSON est le format de fichier le plus populaire en général car, malgré son nom, il est indépendant du langage et est lisible à la fois par les humains et les machines.

Autre chose à noter : les en-têtes et les paramètres sont également importants dans les méthodes HTTP d'une requête HTTP API RESTful car ils contiennent des informations d'identification importantes en termes de métadonnées de requête, d'autorisation, d'identificateur uniforme (URI), de mise en cache, de cookies, etc. Il existe des en-têtes de requête et des en-têtes de réponse, chacun avec ses propres informations de connexion HTTP et codes d'état.

Pour qu'une API soit considérée comme RESTful, elle doit répondre à ces critères :

  • Une architecture client-serveur composée de clients, de serveurs et de ressources, avec des requêtes gérées via HTTP.
  • Communication client-serveur sans état, ce qui signifie qu'aucune information client n'est stockée entre les requêtes get et que chaque requête est indépendante et non connectée.
  • Mise en cache des données qui rationalise les interactions client-serveur.
  • Une interface uniforme entre les composants afin que les informations soient transférées de manière standard. Cela nécessite que :
    • les moyens demandés sont identifiables et distincts des représentations adressées au client.
    • Les ressources peuvent être manipulées par le client à travers la représentation qu'elles reçoivent car la représentation contient suffisamment d'informations pour le faire.
    • les messages auto-descriptifs renvoyés au client contiennent suffisamment d'informations pour décrire comment le client doit les traiter.
    • hypertexte/hypermédia est disponible, ce qui signifie qu'après avoir accédé à une ressource, le client doit pouvoir utiliser des hyperliens pour trouver toutes les autres actions actuellement disponibles qu'il peut effectuer.
  • Un système en couches qui organise chaque type de serveur (ceux chargés de la sécurité, de la répartition de charge, etc.) implique la récupération des informations demandées dans des hiérarchies, invisibles pour le client.
  • Code à la demande (facultatif) : possibilité d'envoyer du code exécutable du serveur au client sur demande, étendant les fonctionnalités du client.

Bien que l'API REST ait ces critères à respecter, elle est toujours considérée comme plus facile à utiliser qu'un protocole prescrit comme SOAP (Simple Object Access Protocol), qui a des exigences spécifiques comme la messagerie XML et la sécurité intégrée et la conformité des transactions qui facilitent utilisation lente et plus lourde.

En revanche, REST est un ensemble de directives qui peuvent être mises en œuvre selon les besoins, rendant les API REST plus rapides et plus légères, avec une plus grande évolutivité, parfaites pour l'Internet des objets (IoT) et le développement de logiciels d'applications mobiles.

S'INSCRIT

Laisser une réponse

S'il vous plaît entrez votre commentaire!
Veuillez entrer votre nom ici

La modération des commentaires est activée. Votre commentaire peut mettre un certain temps à apparaître.

Ce site utilise Akismet pour réduire les spams. Découvrez comment vos données de commentaire sont traitées.

ABONNEZ-VOUS SUR TRPLANE.COM

Publier sur TRPlane.com

Si vous avez une histoire intéressante sur la transformation, l'informatique, le numérique, etc. qui peut être trouvée sur TRPlane.com, veuillez nous l'envoyer et nous la partagerons avec toute la communauté.

PLUS DE PUBLICATIONS

Activer les notifications OK Non merci