Somente DataPower API Gateway

Suportando introspecção para uma API do GraphQL

Se você selecionar a opção Suportar introspecção padrão ao criar uma API de proxy GraphQL , os aplicativos clientes poderão enviar solicitações de introspecção GraphQL para a API.

A introspecção permite que os aplicativos clientes solicitem detalhes de todos os tipos e campos definidos em um esquema GraphQL. Ao criar uma API de proxy GraphQL , as solicitações de introspecção enviadas para essa API de aplicativos clientes são manipuladas pelo gateway. A resposta reflete quaisquer modificações feitas no esquema usando o editor de esquema do GraphQL

Ao selecionar a opção Suportar introspecção padrão , o API Connect cria o terminal de introspecção. Um editor GraphiQL sempre tenta examinar um terminal GraphQL, portanto, a desativação dessa opção reduz significativamente a capacidade de teste para usuários do editor GraphiQL. Essa opção também gera automaticamente a configuração de política em seu conjunto de API que teria que ser criado manualmente se você desativar essa opção e, posteriormente, decidir que ela é necessária; consulte a seção Políticas de conjunto de API para suporte de introspecção para obter detalhes. A desativação dessa opção também limita a capacidade do Portal CMS de testar a API de proxy GraphQL.

Por outro lado, fornecer suporte de introspecção pode ter implicações de recursos e você pode optar por comunicar as informações do esquema de outra maneira. No entanto, observe que o editor GraphiQL não permite consultas de introspecção customizadas para preencher o explorador de documentos. Para obter mais informações sobre introspecção, consulte Introspecção na documentação GraphQL em https://graphql.org/.

Políticas de conjunto da API para suporte de introspecção..

Esta seção detalha a configuração de política do conjunto de APIs que será gerada automaticamente se a opção Suportar introspecção padrão for selecionada quando uma API de proxy GraphQL for criada. Se a opção não for selecionada no horário de criação e você, posteriormente, decidir que deseja ativá-la, deverá incluí-la manualmente no conjunto da API.

Um case é incluído em uma política switch com a condição a seguir:
($operationPath() = '/graphql' and message.attributes.parse.GraphQLIntrospection = 'standard-introspection')
Se a condição for verdadeira, as políticas a seguir serão executadas em sequência, com configurações de propriedade conforme indicado:
Limite de taxa
Propriedade Valor
Origem Plano por nome
Nome de Limite de Taxa graphql-design-request
Operação Consumir
Introspecção do GraphQL
Propriedade Valor
Entrada mensagem
Saída Nenhum valor, assume como padrão a entrada
A configuração gerada automaticamente, como aparece na UI do conjunto, é a seguinte:
Captura de tela mostrando a configuração do conjunto para suporte de introspecção