Fråga flera datakällor i Fabric API för GraphQL

I Fabric API för GraphQL kan du exponera många datakällor via ett enda API-objekt. Med den här funktionen kan du utfärda en enda fråga som hämtar data över flera datakällor.

En fråga med flera datakällor är en sekvens med frågor som utför åtgärder mot olika datakällor.

Den här funktionen förbättrar programmets prestanda genom att minska antalet turer mellan ditt program och API:et för GraphQL.

Kommentar

En begäran om flera datakällor skickar ut enskilda begäranden till datakällor. Du kan inte skapa relationer mellan typer som sträcker sig över flera datakällor. Dessutom finns det ingen garanti för den ordning som enskilda begäranden kör.

Frågeexempel

I följande exempel visas en fråga som sträcker sig över både ContosoSales - och ContosoInventory-datakällorna :

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

Den här begäran hämtar den första noden från kundens fråga som härleds från ContosoSales-datakällan och den första noden från inventeringsfrågan som härleds från datakällan ContosoInventory .

Utdata för begäran är:

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

Utdata har två delar: Det första avsnittet, "data", innehåller utdata från kundens fråga, och det andra avsnittet, "inventorys", innehåller utdata från inventeringsfrågan .

Så här ser frågevyn ut när du kör den här begäran:

Skärmbild av redigeringsskärmen som visar en fråga som sträcker sig över två datakällor.