DéveloppeurWeb.Com
    DéveloppeurWeb.Com
    • Agile Zone
    • AI Zone
    • Cloud Zone
    • Database Zone
    • DevOps Zone
    • Integration Zone
    • Web Dev Zone
    DéveloppeurWeb.Com
    Home»Uncategorized»Construire une API unifiée à l’aide des jointures GraphQL
    Uncategorized

    Construire une API unifiée à l’aide des jointures GraphQL

    mars 3, 2023
    Construire une API unifiée à l'aide des jointures GraphQL
    Share
    Facebook Twitter Pinterest Reddit WhatsApp Email

    GraphQL Joins permet aux développeurs de joindre les données de deux services GraphQL différents pour créer une API GraphQL unifiée sans avoir à écrire de code personnalisé ni à modifier les API sous-jacentes. Il vous permet de récupérer rapidement des données à partir de bases de données et d’autres services GraphQL comme s’il s’agissait d’un schéma pour mélanger et faire correspondre facilement vos sources de données.

    Pour créer une jointure, vous devez définir la relation entre les deux ensembles de données que vous souhaitez unifier. Les jointures sont généralement basées sur une clé partagée entre les deux objets, comme un ID ou un nom. Une fois la relation établie, la requête renvoie les deux ensembles de données, ce qui nous permet de poser des questions complexes et de recevoir une mine d’informations en une seule réponse.

    Ce qui suit est un cas d’utilisation simple pour créer une API unifiée avec Hasura GraphQL Joins en moins de cinq minutes.

    Cet exemple utilise deux API GraphQL distantes, une API de pays et une API météo. Notre objectif est de trouver une liste de pays, puis de connecter la météo pour les capitales. Les deux API sont des points de terminaison GraphQL distants différents que nous devons connecter. Commençons!

    Dans le tableau de bord de l’API Hasura, nous avons déjà interrogé les pays dans la section Explorer à gauche. (Pour savoir comment ajouter un schéma distant, rendez-vous ici.)

    Tableau de bord des schémas distants

    Accédez au tableau de bord Remote Schemas pour connecter les pays et les API météo qui sont des points GraphQL. Nous commençons par ajouter une API GraphQL existante en tant que schéma distant. Pour notre cas d’utilisation, nous ajoutons une API GraphQL tierce contenant des informations sur les pays.

    Nous appellerons cette API « Pays ».

    Des pays

    Ensuite, nous ajouterons un point de terminaison météo. Vous pouvez lui donner le nom que vous voulez, mais nous choisirons « Météo » pour notre cas d’utilisation. Entrez l’URL du serveur GraphQL et cliquez sur « Ajouter ». Si vous avez besoin d’en-têtes d’autorisation pour passer, ajoutez-les dans le champ « En-têtes supplémentaires ».

    Nouveau schéma GraphQL

    Le schéma Weather Remote apparaîtra sous le schéma Pays.

    Afin d’éviter des définitions conflictuelles pour « Langue » dans les champs Pays et Météo, vous devez ajouter une personnalisation. Cliquez sur « Pays » puis allez sur « Modifier ». Cliquez sur le bouton Ajouter sous « Personnalisations GraphQL ». Dans l’espace de noms du champ racine, entrez « countries_graph » et ajoutez « Pays » dans le champ Préfixe, puis appuyez sur Enregistrer.

    Dans l'espace de noms du champ racine, entrez « countries_graph » et ajoutez « Pays » dans le champ Préfixe, puis appuyez sur Enregistrer.

    Revenez maintenant au tableau de bord de l’API et vous verrez les espaces de noms « countries_graph », « getCityby » et « getCityByName » dans la zone Explorer. Cliquez sur « pays_graphique » dans le menu déroulant, sélectionnez « continent », sélectionnez « code » et entrez « NA » pour l’Amérique du Nord. Ensuite, sous « pays », sélectionnez « capitale » pour les récupérer.

    Cliquez sur

    Pour récupérer la météo de chaque capitale, revenez au tableau de bord des schémas distants et sélectionnez « Relations » pour le point de terminaison Pays. Les relations de jointure GraphQL vous permettent d’effectuer des requêtes d’objets imbriqués si les tables/vues de votre base de données sont connectées ou liées dans les API distantes.

    Ici, nous allons créer une API qui nous permet de récupérer la météo pour toutes les capitales de pays d’un continent qui cartographiera une relation entre un pays et le schéma météorologique.

    Ici, nous allons créer une API qui nous permet de récupérer la météo pour toutes les capitales de pays d'un continent qui cartographiera une relation entre un pays et le schéma météorologique.

    Ensuite, cliquez sur « Ajouter une nouvelle relation » et donnez-lui un nom. Nous utiliserons « GetCapitalWeather ». Ensuite, sous Source Remote Schema, sélectionnez « Country » et pour Reference Remote Schema, sélectionnez « Weather ».

    Ensuite, cliquez sur

    Ensuite, cliquez sur « Query » et « getCityByName » dans la section Mapping du menu déroulant. Sélectionnez « nom », « Champ source », puis « Majuscule » dans le menu déroulant À partir du champ. Cela mappera le paramètre de nom à la capitale provenant du point de terminaison « Pays ».

    Ensuite, cliquez sur

    Maintenant, revenez au tableau de bord de l’API et cliquez sur « countries_graph » dans la zone Explorer. Dans le menu déroulant, cliquez sur « code » et tapez « NA » pour récupérer le code de l’Amérique du Nord.

    Maintenant, revenez au tableau de bord de l'API et cliquez sur

    Ensuite, faites défiler vers le bas jusqu’à ce que vous atteigniez la relation « GetCapitalWeather » que nous venons d’ajouter. Sélectionnez les paramètres météorologiques souhaités, tels que la température réelle, minimale ou maximale.

    Ensuite, faites défiler vers le bas jusqu'à ce que vous atteigniez la relation

    Appuyez ensuite sur le bouton de lecture pour exécuter la requête afin d’obtenir la capitale et la météo du pays.

    Appuyez ensuite sur le bouton de lecture pour exécuter la requête afin d'obtenir la capitale et la météo du pays.

    C’est ça. Vous pouvez désormais créer vos propres API unifiées via Hasura GraphQL Joins et connecter facilement différents points de terminaison GraphQL distants avec une simple interface utilisateur et sans écrire de code fastidieux.

    Pour plus d’informations sur les jointures GraphQL avec Hasura, consultez les liens de ressources ci-dessous.

    Share. Facebook Twitter Pinterest LinkedIn WhatsApp Reddit Email
    Add A Comment

    Leave A Reply Cancel Reply

    Catégories

    • Politique de cookies
    • Politique de confidentialité
    • CONTACT
    • Politique du DMCA
    • CONDITIONS D’UTILISATION
    • Avertissement
    © 2023 DéveloppeurWeb.Com.

    Type above and press Enter to search. Press Esc to cancel.