GraphQL从变量添加内省
我想将自省从变量添加到我的应用程序中 我有这样的自省:GraphQL从变量添加内省,graphql,graphiql,Graphql,Graphiql,我想将自省从变量添加到我的应用程序中 我有这样的自省: {"data":{"__schema":{"queryType":{"name":"PageContentQuery"}.... (我从rest请求中获得) 我希望这个变量是模式提供程序,可以吗 完整变量如下所示: const fetcher=(参数:any)=>{ 控制台日志(params); 返回graphql(schema、params.query、params.variables); } const defaultQuery=
{"data":{"__schema":{"queryType":{"name":"PageContentQuery"}....
(我从rest请求中获得)
我希望这个变量是模式提供程序,可以吗
完整变量如下所示:
const fetcher=(参数:any)=>{
控制台日志(params);
返回graphql(schema、params.query、params.variables);
}
const defaultQuery=`{
第{id,contents}页
}`;
渲染(
,
document.getElementById('root'),
);
谢谢鉴于内省查询的结果,您可以使用
buildClientSchema
构建架构:
import { buildClientSchema } from 'graphql'
const schema = buildClientSchema(introspectionResult)
然后,您可以将该模式作为道具传递给GraphiQL组件:
<GraphiQL fetcher={fetcher} schema={schema} />
当然,这通常是不必要的——如果没有传入模式,GraphiQL只会使用您提供的获取程序为您进行一次内省查询。给定内省查询的结果,您可以使用
buildClientSchema
构建模式:
import { buildClientSchema } from 'graphql'
const schema = buildClientSchema(introspectionResult)
然后,您可以将该模式作为道具传递给GraphiQL组件:
<GraphiQL fetcher={fetcher} schema={schema} />
当然,这通常是不必要的——如果没有传入模式,GraphiQL只会使用您提供的获取程序为您进行一个内省查询。您的模式与您的内省查询不匹配。如果不是您想要使用的模式,为什么要传入该模式?您的模式与您的内省查询不匹配。如果不是您想要使用的模式,为什么要传入该模式?