Szintetikus GraphQL API hozzáadása és mezőfeloldók beállítása
A KÖVETKEZŐRE VONATKOZIK: Minden API Management-szint
Az API Managementben hozzáadhat egy GraphQL API-t két modell egyikéhez: átadhatja egy meglévő GraphQL-végpontnak, vagy importálhat egy GraphQL-sémát, és létrehozhat egy szintetikus GraphQL API-t egyéni mezőfeloldókkal. További információkért tekintse meg a GraphQL áttekintését.
Feljegyzés
Ez a funkció jelenleg nem érhető el a munkaterületeken.
Ebben a cikkben a következőt fogja:
- GraphQL-séma importálása az API Management-példányba
- Feloldó beállítása Egy GraphQL-lekérdezéshez meglévő HTTP-végpont használatával
- A GraphQL API tesztelése
Ha egy meglévő GraphQL-végpontot szeretne API-ként elérhetővé tenni, olvassa el a GraphQL API importálása című témakört.
Előfeltételek
- Egy meglévő API Management-példány. Hozzon létre egyet, ha még nem tette meg.
- Érvényes GraphQL-sémafájl a
.graphql
kiterjesztéssel. - Ebben a forgatókönyvben nem kötelező egy háttérbeli GraphQL-végpont.
Nyissa meg az API Management-példányát
Az Azure Portalon keresse meg és válassza ki az API Management-szolgáltatásokat.
Az API Management-szolgáltatások lapon válassza ki az API Management-példányt.
GraphQL-séma hozzáadása
Az oldalnavigációs menü API-k csoportjában válassza az API-kat.
Az Új API definiálása területen válassza a GraphQL ikont.
A párbeszédpanelen válassza a Teljes elemet, és töltse ki a szükséges űrlapmezőket.
Mező Leírás Megjelenített név Az a név, amellyel a GraphQL API megjelenik. Név A GraphQL API nyers neve. A megjelenítendő név beírása közben automatikusan feltöltődik. GraphQL-típus Válassza a GraphQL-sémafájlból importálandó Szintetikus GraphQL lehetőséget. Fallback GraphQL-végpont Megadhat egy GraphQL API-végpontnevet tartalmazó URL-címet. Az API Management továbbítja a GraphQL-lekérdezéseket erre a végpontra, ha egy egyéni feloldó nincs beállítva egy mezőhöz. Leírás Adja meg az API leírását. URL-séma Válasszon a GraphQL-végpont alapján. Válassza ki a WebSocket-sémát (WS vagy WSS) tartalmazó lehetőségek egyikét, ha a GraphQL API tartalmazza az előfizetés típusát. Alapértelmezett kijelölés: HTTP(S). API URL-címének utótagja Adjon hozzá egy URL-utótagot az adott API azonosításához ebben az API Management-példányban. Ennek egyedinek kell lennie ebben az API Management-példányban. Kiindulási URL-cím Az API-alap URL-címét megjelenítő nem szerkeszthető mező Címkék A GraphQL API társítása új vagy meglévő címkékkel. Termékek A GraphQL API társítása egy termékkel a közzétételhez. Verziószámba iktassa ezt az API-t Válassza ki, ha verziószámozási sémát szeretne alkalmazni a GraphQL API-ra. Válassza a Létrehozás lehetőséget.
Az API létrehozása után tallózzon vagy módosítsa a sémát a Tervezés lapon.
A feloldó konfigurálása
Konfiguráljon egy feloldót a séma egy mezőjének egy meglévő HTTP-végponthoz való leképezéséhez. Itt magas szintű lépéseket talál. További részletekért lásd : GraphQL-feloldó konfigurálása.
Tegyük fel, hogy importálta a következő alapszintű GraphQL-sémát, és egy feloldót szeretne beállítani a felhasználók lekérdezéséhez.
type Query {
users: [User]
}
type User {
id: String!
name: String!
}
Az oldalnavigációs menü API-k csoportjában válassza az API-k a GraphQL API-kat>.
A Séma lapon tekintse át egy olyan objektumtípus egyik mezőjének sémáját, amelyben konfigurálni szeretné a feloldót.
Jelöljön ki egy mezőt, majd a bal margón vigye az egérmutatót.
Válassza a +Feloldó hozzáadása lehetőséget
A Feloldó létrehozása lapon:
- Ha szeretné, frissítse a Név tulajdonságot, szükség esetén adjon meg egy leírást, és erősítse meg vagy frissítse a típus- és mezőkijelöléseket.
- Az adatforrásban válassza a HTTP API-t.
A Resolver szabályzatszerkesztőjében frissítse az elemet a
<http-data-source>
forgatókönyv gyermekelemeivel. Az alábbi feloldó például egy meglévő HTTP-adatforrás hívásávalGET
kéri le a felhasználók mezőjét.<http-data-source> <http-request> <set-method>GET</set-method> <set-url>https://myapi.contoso.com/users</set-url> </http-request> </http-data-source>
Válassza a Létrehozás lehetőséget.
A séma egy másik mezőjének adatainak feloldásához ismételje meg az előző lépéseket egy feloldó létrehozásához.
Tipp.
A feloldóházirend szerkesztésekor válassza a Teszt futtatása lehetőséget az adatforrás kimenetének ellenőrzéséhez, amelyet érvényesíthet a sémán. Hibák esetén a válasz hibaelhárítási információkat is tartalmaz.
A GraphQL API tesztelése
Lépjen az API Management-példányra.
Az oldalnavigációs menü API-k csoportjában válassza az API-kat.
A Minden API területen válassza ki a GraphQL API-t.
A tesztkonzol eléréséhez válassza a Teszt fület.
Fejlécek alatt:
- Válassza ki a fejlécet a Név legördülő menüből.
- Adja meg az értéket az Érték mezőben.
- További fejlécek hozzáadásához válassza a +Fejléc hozzáadása lehetőséget.
- Fejlécek törlése a kuka ikonnal.
Ha hozzáadott egy terméket a GraphQL API-hoz, alkalmazza a termék hatókörét a Termékhatókör alkalmazása területen.
A Lekérdezésszerkesztőben a következők valamelyike:
Jelöljön ki legalább egy mezőt vagy almezőt az oldalmenüben lévő listából. A kiválasztott mezők és almezők megjelennek a lekérdezésszerkesztőben.
Kezdjen el gépelni a lekérdezésszerkesztőben egy lekérdezés megírásához.
A Lekérdezés változók csoportban adjon hozzá változókat ugyanazon lekérdezés vagy mutáció újrafelhasználásához, és adjon át különböző értékeket.
Válassza az Küldés lehetőséget.
Tekintse meg a választ.
Ismételje meg az előző lépéseket a különböző hasznos adatok teszteléséhez.
Ha a tesztelés befejeződött, lépjen ki a tesztkonzolból.
A GraphQL API védelme
A GraphQL API biztonságossá tételéhez alkalmazza a meglévő hitelesítési és engedélyezési szabályzatokat , valamint egy GraphQL-érvényesítési szabályzatot a GraphQL-specifikus támadások elleni védelem érdekében.
Kapcsolódó témakörök
- API-importálási korlátozások
- OpenAPI-specifikáció importálása
- SOAP API importálása
- SOAP API importálása és konvertálása REST-té
- App Service API importálása
- Container App API importálása
- WebSocket API importálása
- GraphQL API-k importálása
- GraphQL-sémák importálása és mezőfeloldók beállítása
- Azure-függvényalkalmazás importálása
- Azure Logic App-alkalmazás importálása
- Service Fabric-szolgáltatás importálása
- Azure OpenAI API importálása
- OData API importálása
- SAP OData-metaadatok importálása
- GRPC API importálása
- API szerkesztése