ExécutionGraphQL
La stratégie d'exécutionGraphQL permet d'exécuter une requête GraphQL à l'aide de sous-requêtes.
Prise en charge des passerelles
| Passerelle | Version de la stratégie |
|---|---|
| DataPower® API Gateway | 2.2.0.0DataPower API Gateway Version 10.0.4.0 et ultérieure) 2.2.1.0DataPower API Gateway Version 10.5.2.0 et ultérieure) |
Cette rubrique explique comment configurer la stratégie dans l'interface utilisateur d'Assembly; pour plus de détails sur la configuration de la stratégie dans votre source d' OpenAPI, consultez la documentation de graphql-execute.
A propos de
La stratégie GraphQL Execute exécute une requête GraphQL à l'aide de sous-requêtes. La politique divise la requête GraphQL d'origine en plusieurs sous-requêtes qui peuvent ensuite être traitées de différentes manières. La politique d'exécutionGraphQL prend en charge les quatre sous-requêtes suivantes en tant que cibles :
root; contient la requête GraphQL principale que vous voulez invoquer sur le backend.__introspection; contient la requête d'introspection qui peut être traitée localement sur 'DataPower API Gateway sans avoir à invoquer le backend.__rateLimit; contient la requête '__rateLimitqui spécifie les différentes données de limite de débit que vous souhaitez recevoir.__cost; contient la requête '__costqui spécifie les différentes données de coût que vous souhaitez recevoir. Cette requête doit respecter le format défini dans la spécification « Cost Directives » de l' IBM GraphQL; voir « Introspection des résultats de l'analyse des coûts »__cost:.
root, " __rateLimit et " __introspection peuvent être exécutées dans n'importe quel ordre ou en même temps. La cible " __cost peut être exécutée à tout moment si aucune réponse n'est attendue. Si des données de réponse sont attendues, la cible " __cost est exécutée après la cible " root afin de renvoyer avec précision des données correctes sur le coût de la réponse. Une fois que toutes les cibles ont été exécutées, la politique GraphQL Execute combine toutes les réponses. Pour que les réponses des différentes cibles puissent être correctement fusionnées les unes avec les autres dans une réponse finale unique, la politique GraphQL Execute doit inclure tous les types d'introspection associés à chaque niveau des données de la réponse.Remarque : si la demande comprend l'en-tête
introspectionOnly, la politique d' exécution GraphQL n'exécutera que les sous-requêtes liées à l'introspection, à savoir _introspection, _rateLimit et _cost , sans invoquer le backend pour la requête racine. Ce comportement permet à la passerelle de renvoyer localement les métadonnées du schéma, les informations sur les limites de taux et les résultats de l'analyse des coûts.Propriétés
Le tableau suivant répertorie les propriétés des stratégies, indique si une propriété est nécessaire, définit les valeurs d'entrée et par défaut valides et précise le type de données des valeurs.
| Libellé de la propriété | Obligatoire | Descriptif | Type de données |
|---|---|---|---|
| Titre | Non | Titre de la stratégie. La valeur par défaut est |
chaîne |
| Description | Non | Description de la stratégie. | chaîne |
| Cible | Non | La cible des sous-requêtes. Les valeurs valides sont :
|
chaîne |