Créer une hiérarchie d'API
Les endpoints personnalisés et les requêtes persistées peuvent être organisés en hiérarchie. Cela est réalisé lorsqu'ils déclarent un parent, auquel cas leurs chemins d'endpoint étendront le chemin d'endpoint du parent.
Par exemple, nous pouvons créer cette hiérarchie :
- Requête persistée parente :
/graphql-query/posts/ - Requête persistée enfant :
/graphql-query/posts/english/ - Requête persistée enfant :
/graphql-query/posts/french/
Le nombre de niveaux est illimité, nous pouvons donc également créer :
/graphql-query/posts//graphql-query/posts/mobile-app//graphql-query/posts/mobile-app/english//graphql-query/posts/mobile-app/french//graphql-query/posts/website//graphql-query/posts/website/english//graphql-query/posts/website/french/
Consultez le guide Stratégies pour les hiérarchies d'API pour voir les configurations possibles.
Héritage de propriétés
Les endpoints personnalisés et les requêtes persistées enfants hériteront des propriétés du parent.
Endpoints personnalisés et requêtes persistées
Les endpoints personnalisés et les requêtes persistées enfants hériteront de la configuration du schéma du parent.
Requêtes persistées uniquement
Les requêtes persistées enfants hériteront également de la requête GraphQL et des variables du parent. Les valeurs des variables peuvent être remplacées par l'enfant, variable par variable.
Par exemple, si le parent déclare ces variables :
{
"limit": 5,
"offset": 0
}Et que l'enfant déclare ces variables :
{
"limit": 10
}Alors, les variables calculées pour l'enfant seront :
{
"limit": 10,
"offset": 0
}Créer une hiérarchie d'API
Dans l'endpoint personnalisé ou la requête persistée, dans les paramètres du document, il y a une section Attributs de page avec un menu déroulant de toutes les autres entités, pour en sélectionner une comme parent :

Requêtes persistées
Lors de la sélection d'un parent, la requête persistée proposera une nouvelle option, "Inherit query from ancestor(s)?"
Définissez cette option sur Oui, pour que la requête persistée enfant hérite de la requête GraphQL du parent :

Exemple
Cette requête persistée définit sa requête GraphQL, et déclare la variable $limit avec la valeur 1 :

Une requête persistée enfant l'étend, héritant de la requête GraphQL, et remplaçant la valeur de la variable $limit par 2 :
