Qu'est-ce qu'une passerelle API ?

Qu'est-ce qu'une passerelle API ? | Comment elle peut réellement donner des résultats pratiques

Ana NetoTechnical Leave a Comment

"Le terme API est apparu bien avant le World Wide Web. Plus récemment, un nouveau terme est apparu : Passerelle API. Cela semble un peu étrange au début, car le concept d'API en lui-même suggère déjà une passerelle."

Définition : Qu'est-ce qu'une "passerelle API" ?

Je suis ravi que vous me le demandiez ! Vous vous souvenez peut-être que le terme API est apparu bien avant le World Wide Web et vous savez sans doute que API signifie "Application Programming Interface".

Mais plus récemment, un nouveau terme est apparu : "passerelle API". Cela semble un peu étrange au premier abord, car le concept d'API en lui-même suggère déjà une passerelle. Vous pourriez vous demander "qu'est-ce qu'une passerelle API ?

En un mot, une passerelle API est un outil de gestion qui se situe entre un client et un ensemble de services dorsaux.chacun avec sa propre API.

Par conséquent, la passerelle API agit comme un point d'entrée unique pour un groupe défini d'API. Le client, dans ce cas, sera normalement une application d'utilisateur final.

D'un point de vue plus technique, vous pouvez également considérer une passerelle API comme un proxy inverse spécialisé qui peut faire apparaître différentes API comme s'il s'agissait d'une seule et même API.

Une vue des microservices

Le terme "passerelle API" est souvent utilisé dans un contexte de microservices. La granularité des API fournies par les microservices est souvent différente de ce qui est nécessaire. Cela résulte simplement du concept de microservices : il y a plusieurs petits éléments qui font de petites choses différentes.

Les microservices fournissent généralement des API à granularité fine, ce qui signifie que les clients doivent interagir avec plusieurs services. Par exemple, un client qui a besoin de connaître facilement les détails d'un produit peut avoir besoin d'aller chercher des données dans de nombreux services. C'est pourquoi une passerelle API est utile dans le monde des microservices.

Dans ce contexte et au sein d'une architecture de microservices, encore une fois L'objectif de la passerelle API est de présenter un point d'entrée unique pour tous les clients.mais dans ce cas, c'est fait principalement en simplifiant l'API présentée aux clients.

Diagramme de la passerelle API

Architecture de la passerelle API

Dans ce diagramme, vous pouvez voir une passerelle API est située à la périphérie des systèmes. Il agit comme un outil de gestion ou un intergiciel qui sert de médiateur entre un client et un ensemble de services dorsaux..

Ces les services dorsaux peuvent changer l'emplacement, l'architecture et la mise en œuvre (langage, cadre et autres) avec un impact minimal.

Une vue architecturale

Il n'est pas nécessaire de se limiter à la vue d'une passerelle API microservices, même si c'est ce qu'on pourrait appeler la "vue classique d'une passerelle API".

Vous pouvez également considérer une passerelle API d'une manière plus architecturale et la voir comme un modèle de conception.. On peut dire que le modèle de passerelle API est double puisqu'il correspond en fait à deux modèles de conception classiques du Gang of Four: l'adaptateur et la façade.

Comme un adaptateurElle permet la communication et la collaboration même si les interfaces sont incompatibles.

Comme un façadeDans le cas d'une passerelle API, celle-ci encapsule l'architecture interne de l'application et fournit une API à ses clients.

Tant dans la perspective des microservices que dans celle de l'architecture, la passerelle API a toujours un rôle d'orchestration. et, en fin de compte, devrait être là pour faire en sorte que les choses fonctionnent bien. Mais comment passer des concepts et des définitions aux résultats ?

Comment une passerelle API peut donner des résultats concrets

Plongeons dans des aspects plus pratiques et voyons comment nous pouvons obtenir des résultats.

Pour cela, nous allons utiliser une passerelle API spécifique, notre propre passerelle d'intégration appelée Connect Bridge. Considérez Connect Bridge comme un point d'entrée unique qui "parle" SQL. Cela signifie que quel que soit le code utilisé (et vous pouvez opter pour n'importe quel langage de programmation), il communiquera avec cette passerelle API comme s'il s'agissait d'une base de données, par le biais des instructions CRUD normales : SELECT, INSERT, UPDATE, DELETE.

Connect Bridge possède un "traducteur" (que nous appelons en fait "connecteur") pour chaque application que nous voulons atteindre via l'API. Ce connecteur traduit effectivement les déclarations SQL en appels API.

En utilisant Connect Bridge, vous aurez besoin de moins de code (beaucoup moins - la réduction peut aller jusqu'à 90% selon le projet), le code sera plus facile à comprendre et à tester, et vous réduirez considérablement le nombre de bogues.

Ce qui est amusant, c'est que lorsque vous travaillez avec Connect Bridge, le fait qu'elle utilise SQL vous fera penser que vous travaillez avec la base de données du système cible, par exemple, la base de données de Microsoft Exchange. Mais ne vous inquiétez pas, ce n'est pas le cas, et l'intégrité de la base de données est sûre - il s'agit d'une passerelle qui accède toujours au système cible via son API.

Connect Bridge - comment ça marche infographique

Pas à pas avec Connect Bridge comme passerelle API

  1. Code de votre nouvelle ou ancienne application
  2. Des instructions CRUD en SQL standard accédant au système cible comme s'il s'agissait d'une base de données.
  3. Connect Bridge traduit le SQL en appels API
  4. Pour chaque système cible, ces traductions sont en fait gérées par un connecteur

Quels langages de programmation puis-je utiliser ?

Une remarque sur le langage de programmation que vous pouvez utiliser avec Connect Bridge. Comme je l'ai mentionné, vous pouvez utiliser pratiquement tout langage de programmation.

Vous devez juste vous assurer qu'il supporte ODBC, JDBCou Services web. Tant que c'est le cas, vous êtes prêt à partir.

Par exemple, disons que vous voulez utiliser Java. Bien, alors vous pouvez générer une chaîne de connexion JDBC, et vous avez une passerelle API Java.

Vous voulez utiliser Node.js ? C'est aussi bien, vous pouvez générer une chaîne de connexion de services Web et vous avez votre passerelle API Node.js.

Je pourrais continuer, mais je pense que vous avez compris : vous pouvez utiliser votre langage de programmation préféré.

Cordons de connexion Connect Bridge

Cordons de connexion Connect Bridge

Prix de la passerelle API Connect Bridge

Connect Bridge est un outil payant, dont les prix varient en fonction du nombre et du type de connecteurs utilisés et du nombre d'utilisateurs. Pour vous donner une idée générale du coût de cette passerelle API, nous pouvons vous dire que les prix commencent à 150€/mois. Pour plus de détails sur les prix, rendez-vous sur ici. Nous vous recommandons de l'essayer vous-même avec le essai gratuit d'abord et ainsi vous pourrez avoir une idée de ce que seront les gains de productivité.

En termes de retour sur investissement, vous devez également considérer que la passerelle assure la solution finale continue de fonctionner même lorsque le système cible est mis à niveau. sans aucun changement dans le code que vous avez écrit. Tous les problèmes seront gérés par la passerelle.

Premiers pas avec le Connect Bridge

Pour vous guider dans les premières étapes de l'utilisation de Connect Bridge, nous aurons besoin d'un exemple de système cible. Nous choisirons Microsoft SharePoint pour cela, mais cela pourrait être beaucoup d'autres.

  1. Demander un essai gratuit.
  2. Installez Connect Bridge.
  3. Traitez la configuration en utilisant Connect Bridge Management Studio :
    • L'authentification de la passerelle API se fait en deux étapes. Pour se connecter à SharePoint, les utilisateurs doivent se connecter à Connect Bridgeet ensuite Connect Bridge doit se connecter à SharePoint.
      • Ajoutez un compte pour SharePoint (Comptes - Ajouter un compte). Vous aurez besoin de vos informations d'identification SharePoint.
      • Soit vous autorisez l'utilisateur Administrateur par défaut à utiliser ce compte, soit vous créez un nouvel utilisateur et autorisez cet utilisateur à utiliser le compte SharePoint.
    • o Cliquez sur l'option New Query (nouvelle requête), puis sur le Connection Browser (navigateur de connexion). Localisez le connecteur SharePoint et ouvrez-le jusqu'à ce que vous arriviez à DefaultConnection. Cliquez dessus avec le bouton droit de la souris et sélectionnez Get Connection string. Copiez ensuite la chaîne de connexion appropriée. Vous en aurez besoin pour votre code.

Essai du Connect Bridge

Utilisez l'option Nouvelle requête pour tester une requête qui vous permettra d'obtenir les données dont vous avez besoin à partir de SharePoint. Nous allons utiliser un exemple de requête ici, mais la requête doit être adaptée à ce que vous voulez obtenir de SharePoint.

Une fois que vous avez sélectionné l'option Nouvelle requête, ouvrez le navigateur de connexion.

  1. Trouvez le connecteur SharePoint et ouvrez-le jusqu'à ce que vous voyiez l'option Tables. Vous pourrez voir que le schéma contient une "table" appelée Site_Pages.
  2. Nous pouvons utiliser la requête SELECT UniqueId, ContentType, Created, Modified, ContentVersion FROM Site_Pages LIMIT 10 ;
    Ceci sélectionnera les 10 premières entrées de la liste des pages du site de la SharePoint.

Veuillez noter que même s'il semble que nous utilisons directement une base de données, ce n'est pas du tout le cas. Connect Bridge accède uniquement à l'API et présente ensuite les données comme si elles provenaient d'une base de données. N'hésitez pas à explorer un peu ici. Vous pouvez également explorer les procédures stockées disponibles. Une fois que vous avez votre requête, copiez-la, car vous en aurez besoin dans votre code.

Il est également important de noter que, à ce stade, vous ne faites que tester les choses. Vous pouvez considérer le Connect Bridge Management Studio comme votre terrain de jeu. Une fois que vous êtes satisfait de la requête obtenue, vous l'utilisez simplement dans votre code, comme si vous accédiez à une base de données. C'est assez simple.

Pour des informations plus détaillées, vous pouvez consulter la documentation de la passerelle API que vous obtiendrez lorsque vous recevrez votre carte de crédit. essai gratuit. Vous pouvez également vérifier les logs de la passerelle API, ce qui, dans Connect Bridge, se fait facilement en utilisant Connect Bridge Studio de gestion en utilisant l'option Centre d'administration - Système - Journaux dans la barre de navigation.

Conclusion et points à retenir

Le concept de passerelle API peut sembler trop théorique au premier abord, mais il n'est pas difficile de visualiser les avantages dès lors que l'on se concentre sur un outil spécifique comme Connect Bridge.

  • L'accès est centralisé sur la passerelle API, indépendamment du nombre de systèmes cibles.
  • Le fait de ne pas avoir à apprendre une nouvelle API ou un nouveau langage de programmation permet de réduire les erreurs et d'améliorer la productivité.
  • La maintenance est également centralisée et isolée - tout se passe du côté de la passerelle API et non dans votre code, avec une compatibilité en amont garantie pour chaque système cible par Connect Bridge elle-même (et également une compatibilité en aval si vous en avez besoin).

Si vous avez des commentaires ou des suggestions, écrivez-les dans le formulaire ci-dessous et nous vous répondrons dès que possible.

Ana Neto - Conseiller technique, auteur

Ana Neto
technical conseiller au Connecting Software

Auteur :

Je suis ingénieur en informatique depuis 1997, et plus récemment, j'aime écrire et parler en public.  Vous avez des questions ou des commentaires sur ce poste ou sur le Connect Bridge ? J'aimerais avoir votre avis !

 ana@connecting-software.com

Laisser un commentaire

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

For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.