Aller au contenu

Simuler une API GraphQL

Clic droit sur un dossier ▸ Ajouter ▸ Serveur GraphQL.

ChampRôle
SchémaLes définitions de types, en SDL
Résolveurs simulésUn objet JSON dont les clés sont de la forme Type.champ, par exemple Query.pets
Script de résolutionDu JavaScript recevant (parent, args, context)

Le script l’emporte sur les valeurs canned quand il est renseigné : c’est ce qui permet de faire varier la réponse selon les arguments reçus.

Un élément Serveur GraphQL : l'adresse d'écoute, le schéma SDL servi, et la carte des résolveurs prédéfinis clé Type.champ → valeur

Le plus rapide : le schéma décrit la forme, les résolveurs donnent le contenu.

type Animal { id: ID!, nom: String!, espece: String! }
type Query { animaux: [Animal!]! }
{
"Query.animaux": [
{ "id": "1", "nom": "Mistigri", "espece": "chat" },
{ "id": "2", "nom": "Rex", "espece": "chien" }
]
}

Quand la réponse doit dépendre de l’entrée :

// (parent, args, context)
if (args.espece) {
return animaux.filter((a) => a.espece === args.espece);
}
return animaux;

Les abonnements déclarés dans le schéma sont servis eux aussi : un client peut s’y connecter et recevoir les messages émis.

Les actions Serveur GraphQL et Fermeture serveur GraphQL hébergent le service pour la durée du scénario. Voir Serveurs hébergés.

Développer un front avant que le back n’existe, reproduire une réponse d’erreur difficile à provoquer en recette, ou figer un jeu de données pour un test déterministe — sans dépendre d’un service distant.