Partager via


Interroger plusieurs sources de données dans l’API Fabric pour GraphQL

Dans l’API Fabric pour GraphQL, vous pouvez exposer de nombreuses sources de données via un seul article d’API. Cette fonctionnalité vous permet d’émettre une requête unique qui récupère des données sur plusieurs sources de données.

Une requête de source de données multiples est une séquence de requêtes qui effectuent des opérations sur différentes sources de données.

Cette fonctionnalité améliore les performances des applications en réduisant le nombre d’allers-retours entre votre application et l’API pour GraphQL.

Remarque

Une demande de source de données multiples a pour conséquence d’extraire les demandes individuelles adressées aux sources de données. Vous ne pouvez pas créer de relations entre les types qui s’étendent sur plusieurs sources de données. En outre, il n’existe pas de garantie sur l’ordre que les demandes individuelles s’exécutent.

Exemple de requête

L’exemple suivant montre une requête qui s’étend à la fois sur les sources de données ContosoSales et ContosoInventory :

query {
  customers (first: 1) {
    items {
      FirstName
      LastName
    }
  }
  inventories (first: 1) {
    items {
      Name
    }
  }
}

Cette requête récupère le premier nœud de la requête clients dérivée de la source de données ContosoSales et le premier nœud de la requête d’inventaires dérivée de la source de données ContosoInventory .

Le résultat de la requête est le suivant :

{
  "data": {
    "customers": {
      "items": [
        {
          "FirstName": "Orlando",
          "LastName": "Gee"
        }
      ]
    },
    "inventories": {
      "items": [
        {
          "Name": "AWC Logo Cap"
        }
      ]
    }
  }
}

La sortie comporte deux parties : la première section, « données », contient la sortie de la requête clients et la deuxième section, « inventaires », contient la sortie de la requête inventaires .

Il s’agit de l’apparence de la vue de requête lorsque vous exécutez cette requête :

Capture d’écran de l’éditeur montrant une requête couvrant deux sources de données.