• Accueil
  • Cours

    Nos cours

    • Tout les cours
    • web
    • Mobile
    • Embarqué et IOT
    • développement back-end
    • Business intelligence et data analysis

    Récent

    Les bases de arduino Lire la suite
    Khalil lakhdhar

    Les bases de arduino

    Khalil lakhdhar
    (0 avis)
    8
    students
    0
    Gratuit
    Gratuit
    Lire la suite

    protech E-learning

  • Articles
  • A propos
  • Contact
  • Devenir formateur
  • Cours en directe
    Vos questions
    28916284
    education@protech-it.org
    S'inscrireSe connecter
    Protech-onlineProtech-online
    • Accueil
    • Cours

      Nos cours

      • Tout les cours
      • web
      • Mobile
      • Embarqué et IOT
      • développement back-end
      • Business intelligence et data analysis

      Récent

      Les bases de arduino Lire la suite
      Khalil lakhdhar

      Les bases de arduino

      Khalil lakhdhar
      (0 avis)
      8
      students
      0
      Gratuit
      Gratuit
      Lire la suite

      protech E-learning

    • Articles
    • A propos
    • Contact
    • Devenir formateur
    • Cours en directe

      Article

      • Home
      • Blog
      • Article
      • Qu’est-ce que l’API REST? – Un guide complet des API RESTful

      Qu’est-ce que l’API REST? – Un guide complet des API RESTful

      • Posted by Khalil lakhdhar
      • Categories Article
      • Date 20 janvier 2016
      • Commentaires 0 commentaire

      Depuis l’invention d’Internet, nous utilisons différentes applications et pages Web pour obtenir des données pour diverses ressources. Cependant, avez-vous déjà pensé, d’où viennent ces données? Eh bien, ce sont les serveurs d’où nous obtenons les données. Ainsi, dans cet article sur Qu’est-ce que l’API REST, examinons comment un client communique avec les serveurs pour extraire les informations requises.

      Maintenant, avant de définir l’API REST pour vous, permettez-moi de vous donner un exemple pour vous faire comprendre le besoin de l’API REST.

      Besoin d’API REST

      Envisagez un scénario dans lequel vous utilisez l’application Book My Show. Maintenant, évidemment, cette application a besoin de beaucoup de données d’entrée, car les données présentes dans l’application ne sont jamais statiques. Soit il s’agit de films sortis fréquemment, soit de différentes villes montrant des films en différentes langues à différents moments de la journée. Ce n’est jamais statique, ce qui implique que les données changent toujours dans ces applications.

      Maintenant, d’où pensez-vous que nous obtenons ces données?

      Eh bien, ces données sont reçues du serveur ou plus communément appelé serveur Web. Ainsi, le client demande au serveur les informations requises, via une API, puis le serveur envoie une réponse au client.

      Ici, la réponse envoyée au client se présente sous la forme d’une page Web HTML. Mais, pensez-vous que c’est une réponse appropriée à laquelle vous vous attendez lorsque vous envoyez une demande?

      Eh bien, je suppose que vous diriez NON. Depuis, vous préféreriez que les données soient renvoyées sous forme de format structuré plutôt que sur la page Web complète.

      Ainsi, pour de telles raisons, les données renvoyées par le serveur, en réponse à la demande du client, sont au format JSON ou XML. Les formats JSON et XML ont une structure hiérarchique de données appropriée.

      Maintenant, cela semble assez simple, non?

      Mais, le seul problème qui est présent dans ce cadre jusqu’à présent est que vous devez utiliser beaucoup de méthodes pour obtenir les informations requises. En fait, l’utilisation de ces méthodes pour récupérer des informations devient assez lourde lorsque vous avez besoin de données complexes.

      C’est donc là que l’API REST entre en scène. L’API REST crée un objet, puis envoie les valeurs d’un objet en réponse au client.

      Maintenant que vous connaissez le besoin de REST, à côté de cet article, examinons ce qu’est l’API REST?

      Qu’est-ce que l’API REST?

      REST suggère de créer un objet des données demandées par le client et d’envoyer les valeurs de l’objet en réponse à l’utilisateur. Par exemple, si l’utilisateur demande un film à Bangalore à un certain endroit et à un certain moment, vous pouvez créer un objet côté serveur.

      Donc, ici, vous avez un objet et vous envoyez l’état d’un objet. C’est pourquoi REST est connu sous le nom de transfert d’état représentatif.

      Si je dois définir REST, alors,  Representational State Transfer aka REST est un style architectural ainsi qu’une approche à des fins de communication qui est souvent utilisée dans le développement de divers services Web.

      Le style architectural de REST permet de tirer parti de la moindre utilisation de la bande passante pour rendre une application plus adaptée à Internet. Il est souvent considéré comme le « langage d’Internet » et est entièrement basé sur les ressources.

      Pour mieux comprendre, approfondissons un peu et voyons comment fonctionne exactement une API REST. Fondamentalement, l’API REST décompose une transaction afin de créer de petits modules. Désormais, chacun de ces modules est utilisé pour traiter une partie spécifique de la transaction. Cette approche offre plus de flexibilité mais nécessite beaucoup d’efforts pour être construite à partir de zéro.

      Donc, maintenant que vous savez ce qu’est l’API REST, comprenons maintenant les contraintes ou les principes qui doivent être satisfaits pour qu’une application soit considérée comme l’API REST.

      Principes de l’API REST

      Eh bien, le Dr Fielding a défini six principes de base qui ont été ceux qui ont défini la conception de l’API REST en 2000. Voici les six principes directeurs de REST:

      Apatride

      Les demandes envoyées d’un client à un serveur contiendront toutes les informations requises pour que le serveur comprenne les demandes envoyées par le client. Cela peut être une partie de l’URL,  des paramètres de chaîne de requête, du corps ou même des en-têtes. L’URL est utilisée pour identifier de manière unique la ressource et le corps contient l’état de la ressource demandeuse. Une fois que le serveur traite la demande, une réponse est envoyée au client via le corps, le statut ou les en-têtes

      Serveur client

      L’architecture client-serveur permet une interface uniforme et sépare les clients des serveurs. Cela améliore la portabilité sur plusieurs plates-formes ainsi que l’évolutivité des composants du serveur.

      Interface uniforme

      Pour obtenir l’uniformité dans toute l’application, REST présente les quatre contraintes d’ interface suivantes :

      • Identification des ressources
      • Manipulation des ressources à l’aide de représentations
      • Messages auto-descriptifs
      • L’hypermédia comme moteur de l’état de l’application

      Cacheable

      Afin de fournir de meilleures performances, les applications sont souvent mises en cache. Cela se fait en  étiquetant la réponse du serveur comme pouvant être mis en cache ou non, soit implicitement ou explicitement. Si la réponse est définie comme pouvant être mise en cache, le cache client peut réutiliser les données de réponse pour des réponses équivalentes à l’avenir.

      Système en couches

      L’architecture du système en couches permet à une application d’être plus stable en limitant le comportement des composants. Ce type d’architecture contribue à améliorer la sécurité de l’application, car les composants de chaque couche ne peuvent pas interagir au-delà de la couche immédiate dans laquelle ils se trouvent. En outre, il permet l’équilibrage de charge et fournit des caches partagés pour promouvoir l’évolutivité.

      Code sur demande

      Il s’agit d’une contrainte facultative et la moins utilisée. Il permet de télécharger et d’utiliser un code client ou des applets dans l’application. En substance, il simplifie les clients en créant une application intelligente qui ne repose pas sur sa propre structure de code.

      Maintenant que vous connaissez les principes de l’API REST, examinons ensuite les méthodes de l’API REST.

      Méthodes de l’API REST

      Nous travaillons tous avec la technologie du Web, faisons des opérations CRUD. Quand je dis opérations CRUD, je veux dire que nous créons une ressource, lisons une ressource, mettons à jour une ressource et supprimons une ressource. Maintenant, pour effectuer ces actions, vous pouvez réellement utiliser les méthodes HTTP, qui ne sont que les méthodes de l’API REST. Reportez-vous ci-dessous.

      Maintenant que vous savez ce qu’est une API REST et ce dont vous avez besoin pour offrir une application efficace, approfondissons et voyons le processus de construction de l’API REST.

      Comment créer une API REST?

      Dans cette démonstration pratique, je vais créer une simple application CRUD REST à l’aide de Node.js. Pour créer cette application, vous devrez installer les éléments suivants:

      1. Node.js
      2. Express.js
      3. Joi
      4. nodemon (Node Monitor)

      Tag:Back-end

      • Share:
      author avatar
      Khalil lakhdhar

      Next post

      angular n'est pas angular js Pourquoi?
      18 mars 2020

      Vous aimez peut être aussi

      C’est quoi Graphql
      30 mars, 2020

      Un langage de requête pour votre API GraphQL est un langage de requête pour les API et un runtime pour répondre à ces requêtes avec vos données existantes. GraphQL fournit une description complète et compréhensible des données de votre API, donne …

      event-2-450×233
      angular n’est pas angular js Pourquoi?
      18 mars, 2020

      Leave A Reply Annuler la réponse

      Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

      Search

      Catégories

      • Article

      Cours récents

      Les bases de java

      Les bases de java

      Gratuit
      Les bases de arduino

      Les bases de arduino

      Gratuit
      Initiation angular

      Initiation angular

      Gratuit

      31 597 990

      contact@protech-it.org

      Protech-IT

      • About Us
      • Blog
      • Contact
      • Become a Teacher

      Liens

      • Cours
      • Events
      • Gallery
      • FAQs

      Support

      • Documentation
      • Forums
      • Language Packs
      • Release Status

      Protech-IT 2020

      • Privacy
      • Terms
      • Sitemap
      • Purchase


      Connect with

      Login with Google

      logo

      Login with your site account

      Connect with

      Login with Google
      logo


      Lost your password?

      Not a member yet? S'inscrire

      Créez un nouveau compte

      Déjà membre Login now