Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: Alle API Management-lagen
In API Management kunt u een GraphQL-API toevoegen in een van twee modellen: passthrough naar een bestaand GraphQL-eindpunt of een GraphQL-schema importeren en een synthetische GraphQL-API maken met aangepaste veld resolvers. Zie het GraphQL-overzicht voor meer informatie.
Opmerking
Deze functie is momenteel niet beschikbaar in werkruimten.
In dit artikel gaat u het volgende doen:
- Een GraphQL-schema importeren in uw API Management-exemplaar
- Een resolver instellen voor een GraphQL-query met behulp van een bestaand HTTP-eindpunt
- Uw GraphQL-API testen
Als u een bestaand GraphQL-eindpunt als API wilt weergeven, raadpleegt u Een GraphQL-API importeren.
Vereiste voorwaarden
- Een bestaand API Management-exemplaar. Maak er een als u dat nog niet hebt gedaan.
- Een geldig GraphQL-schemabestand met de
.graphql
extensie. - Een back-end GraphQL-eindpunt is optioneel voor dit scenario.
Ga naar uw API-Beheerinstantie
Zoek en selecteer in de Azure portalde API Management-services:
Selecteer op de pagina API Management-services uw API Management-exemplaar:
Een GraphQL-schema toevoegen
Selecteer API's in het navigatiemenu aan de zijkant, onder de sectie API's.
Onder Een nieuwe API definiëren selecteer je het GraphQL-pictogram.
Selecteer in het dialoogvenster Volledig en vul de vereiste formuliervelden in.
Veld Beschrijving weergavenaam De naam waarmee uw GraphQL-API wordt weergegeven. Naam Onbewerkte naam van de GraphQL-API. Wordt automatisch ingevuld terwijl u de weergavenaam typt. GraphQL-type Selecteer Synthetische GraphQL om te importeren uit een GraphQL-schemabestand. Fallback GraphQL-eindpunt Voer desgewenst een URL in met de naam van een GraphQL API-eindpunt. API Management geeft GraphQL-query's door aan dit eindpunt wanneer een aangepaste resolver niet is ingesteld voor een veld. Beschrijving Voeg een beschrijving van uw API toe. URL-schema Maak een selectie op basis van uw GraphQL-eindpunt. Selecteer een van de opties die een WebSocket-schema (WS of WSS) bevatten als uw GraphQL-API het abonnementstype bevat. Standaardselectie: HTTP(S). API-URL-achtervoegsel Voeg een URL-achtervoegsel toe om deze specifieke API in dit API Management-exemplaar te identificeren. Het moet uniek zijn in dit API Management-exemplaar. Basis-URL Niet-bewerkbaar veld met jouw API-basis-URL tags Koppel uw GraphQL-API aan nieuwe of bestaande tags. PRODUCTEN Koppel uw GraphQL-API aan een product om deze te publiceren. Versie van deze API? Selecteer dit om een versiebeheerschema toe te passen op uw GraphQL-API. Klik op Creëren.
Nadat de API is gemaakt, bladert of wijzigt u het schema op het tabblad Ontwerpen .
Resolver configureren
Configureer een resolver om een veld in het schema toe te wijzen aan een bestaand HTTP-eindpunt. Hier worden stappen op hoog niveau gegeven. Zie Een GraphQL-resolver configureren voor meer informatie.
Stel dat u het volgende eenvoudige GraphQL-schema hebt geïmporteerd en een resolver voor de gebruikersquery wilde instellen.
type Query {
users: [User]
}
type User {
id: String!
name: String!
}
Selecteer in het zij-navigatiemenu onder de sectie API'sAPI's> voor uw GraphQL-API.
Controleer op het tabblad Schema het schema voor een veld in een objecttype waar u een resolver wilt configureren.
Selecteer een veld en plaats de aanwijzer in de linkermarge.
Selecteer + Oplosser Toevoegen
Op de pagina Resolver maken :
- Werk de eigenschap Naam desgewenst bij, voer desgewenst een beschrijving in en bevestig of werk de selecties Type en Veld bij.
- Selecteer HTTP-API in de gegevensbron.
Werk in de beleidseditor van Resolver het
<http-data-source>
element bij met kind-elementen voor uw scenario. Met de volgende resolver wordt bijvoorbeeld het gebruikersveld opgehaald door eenGET
aanroep uit te voeren naar een bestaande HTTP-gegevensbron.<http-data-source> <http-request> <set-method>GET</set-method> <set-url>https://myapi.contoso.com/users</set-url> </http-request> </http-data-source>
Klik op Creëren.
Als u gegevens voor een ander veld in het schema wilt oplossen, herhaalt u de voorgaande stappen om een resolver te maken.
Aanbeveling
Wanneer u een resolver-beleid bewerkt, selecteert u Test uitvoeren om de uitvoer van de gegevensbron te controleren, die u kunt valideren op basis van het schema. Als er fouten optreden, bevat het antwoord informatie over probleemoplossing.
Uw GraphQL-API testen
Navigeer naar uw API Management-exemplaar.
Selecteer API's in het navigatiemenu aan de zijkant, onder de sectie API's.
Selecteer uw GraphQL-API onder Alle API's.
Selecteer het tabblad Testen om toegang te krijgen tot de testconsole.
Onder Kopteksten:
- Selecteer de koptekst in de vervolgkeuzelijst Naam .
- Voer de waarde in het veld Waarde in.
- Voeg meer headers toe door + Koptekst toevoegen te selecteren.
- Verwijder kopteksten met behulp van het prullenbakpictogram.
Als u een product hebt toegevoegd aan uw GraphQL-API, past u het productbereik toe onder Productbereik toepassen.
Onder Query-editor, doe het volgende:
Selecteer ten minste één veld of subveld in de lijst in het zijmenu. De velden en subvelden die u selecteert, worden weergegeven in de queryeditor.
Begin te typen in de queryeditor om een query op te stellen.
Voeg onder Queryvariabelen variabelen toe om dezelfde query of mutatie opnieuw te gebruiken en verschillende waarden door te geven.
Klik op Verzenden.
Bekijk het antwoord.
Herhaal de voorgaande stappen om verschillende payloads te testen.
Wanneer het testen is voltooid, sluit u de testconsole af.
Uw GraphQL-API beveiligen
Beveilig uw GraphQL-API door zowel bestaand verificatie- als autorisatiebeleid en een GraphQL-validatiebeleid toe te passen om te beschermen tegen GraphQL-specifieke aanvallen.
Verwante inhoud
- Beperkingen bij het importeren van API's
- Een OpenAPI-specificatie importeren
- Een SOAP-API importeren
- Een SOAP-API importeren en deze naar REST converteren
- Een App Service-API importeren
- Een API voor een container-app importeren
- Een WebSocket-API importeren
- Een GraphQL-API importeren
- Importeer een GraphQL-schema en stel veldresolvers in
- Een api voor een functie-app importeren
- Een API voor een logische app importeren
- Een Service Fabric-service importeren
- Een Azure AI Foundry-API importeren
- Een Azure OpenAI-API importeren
- Een LLM-API importeren
- Een OData-API importeren
- SAP OData-metagegevens importeren
- Een gRPC-API importeren
- Een API bewerken