Fabric-API voor GraphQL-editor
De Fabric-API voor GraphQL biedt een grafische in-browser GraphQL-ontwikkelomgeving, waarmee een interactieve speeltuin de live resultaten van uw GraphQL-query's en mutaties kan opstellen, testen en bekijken.
Als u naar de editor wilt gaan, opent u de API voor GraphQL-item in de werkruimte in Fabric en selecteert u Query in de linkerbenedenhoek van het portalscherm.
U kunt GraphQL-query's rechtstreeks op het tabblad Query typen en uitvoeren. Intellisense-mogelijkheden zijn beschikbaar met een sneltoets: Ctrl + Spatiebalk (Windows) of Command + Spatie (macOS). Selecteer Uitvoeren om de query uit te voeren en de gegevens dienovereenkomstig op te halen uit de gegevensbron.
Code genereren
Nadat u de gewenste GraphQL-bewerking hebt getest en prototypen hebt uitgevoerd, kan de API-editor standaard Python of Node.js code genereren op basis van de query of mutatie die in de editor wordt uitgevoerd. U kunt de gegenereerde code lokaal uitvoeren voor testdoeleinden en onderdelen ervan opnieuw gebruiken in het proces voor het ontwikkelen van toepassingen.
Belangrijk
De gegenereerde code maakt gebruik van interactieve browserreferenties en mag alleen worden gebruikt voor testdoeleinden. Registreer in productie altijd een toepassing in Microsoft Entra en gebruik de juiste client_id
bereiken. U vindt een end-to-end-voorbeeld met voorbeeldcode in Connect Applications.
Als u aan de slag wilt gaan, voert u een query uit, selecteert u de knop Code genereren en kiest u de taal dienovereenkomstig:
Vervolgens kunt u de gegenereerde code kopiëren en opslaan als een bestand in een lokale map. Afhankelijk van de taal van uw keuze, voert u eenvoudige stappen uit om lokaal te testen:
Python
- Een virtuele omgeving maken met de opdracht
python -m venv .venv
-
venv
Het gebruik activeren.venv\Scripts\activate
ofsource .venv/bin/activate
- De vereiste afhankelijkheid installeren met de opdracht
pip install azure.identity
- De code uitvoeren met
python <filename.py>
Node.JS
- Maak in dezelfde map als het bestand dat u hebt opgeslagen een
package.json
bestand met de volgende inhoud:
{
"type": "module",
"dependencies": {
}
}
- Voer
npm install --save @azure/identity
of vergelijkbare opdracht uit in uw pakketbeheer naar keuze om de nieuwste versie van de identiteitsbibliotheek te installeren. - De code uitvoeren met
node <filename>.js
Ontwikkeling van query's en mutaties
Bekijk het volgende korte GraphQL-schema, dat één Post
type definieert met query's om één bericht te lezen of alle berichten weer te geven. Het definieert ook mutaties voor het maken, bijwerken of verwijderen van berichten die alle CRUDL-toepassingen (maken, lezen, bijwerken, verwijderen, lijst) ondersteunen.
type Post {
id: ID!
title: String!
content: String!
author: String!
published: Boolean
}
type Query {
getPost(id: ID!): Post
getAllPosts: [Post]
}
type Mutation {
createPost(title: String!, content: String!, author: String!): Post
updatePost(id: ID!, title: String, content: String, author: String, published: Boolean): Post
deletePost(id: ID!): Boolean
}
U kunt de gegevens lezen die beschikbaar zijn via GraphQL met behulp van een query die in het schema is gedefinieerd. De getPost
query moet eruitzien als in het volgende voorbeeld.
query MyQuery {
getPost(id: "1234") {
title
content
author
}
}
Antwoord:
{
"data": {
"getPost": {
"title": "First Post",
"content": "This is my first post.",
"author": "Jane Doe"
}
}
}
Schrijf gegevens met behulp van mutaties, zoals createPost
het creëren van een post met de vereiste parameters.
mutation MyMutation {
createPost(title: "Second post", content: "This is my second post", author: "Jane Doe", published: false) {
id
title
content
author
}
}
Antwoord:
{
"data": {
"createPost": {
"id": "5678",
"title": "Second Post",
"content": "This is my second post.",
"author": "Jane Doe"
}
}
}
Queryvariabelen
Gebruik het deelvenster Queryvariabelen aan de rechterkant van het tabblad Query om parameters als variabelen door te geven aan uw query's of mutaties. Variabelen werken op dezelfde manier als variabelen in elke andere programmeertaal. Elke variabele moet worden gedeclareerd met een naam die wordt gebruikt voor toegang tot de waarde die erin is opgeslagen. Met het vorige mutatievoorbeeld kunt u deze enigszins wijzigen om queryvariabelen te gebruiken.
mutation MyMutation ($title: String!, $content: String!, $author: String!){
createPost(title: $title, content: $content, author: $author) {
id
title
content
author
}
}
Definieer de variabelen in het deelvenster, zoals in het volgende voorbeeld.
{
"id": "5678",
"title": "Second Post",
"content": "This is my second post.",
"author": "Jane Doe"
}
Variabelen maken de mutatiecode schoner en gemakkelijker te lezen, te testen en de parameters te wijzigen.