我将nodejs与graphql和graphql-compose一起使用,因此我将方案定义为
schemaComposer.Query.addFields({
Me: MyResolvers,
Info: MyInfoResolvers,
Post: PostResolvers
})
schemaComposer.Mutation.addFields({
Login: MyLoginResolvers,
Register: RegisterResolvers
})
schemaComposer.Subscription.addFields({
Subscribe: Mysubscribe
})所以任何获取所有查询、变异和订阅列表数组示例函数都需要打印
[
{ operator: "Me", name: "Query" }
{ operator: "Info", name: "Query" }
{ operator: "Post", name: "Query" }
{ operator: "Login", name: "Mutation" }
{ operator: "Register", name: "Mutation" }
{ operator: "Subscribe", name: "Subscription" }
]
or Object is best
{
Query: ["Me", "Info", "Post"],
Mutation: ["Login", "Register"],
Subscription: ["Subscribe"]
}我可以使用graphql库中的解析函数来解析来自请求的查询,从而使用
import { parse } from "graphql"
const query:any = parse(context.req.body?.query)
const operator = query.definitions[0]?.operation
const name = query.definitions[0]?.selectionSet?.selections[0]?.name?.value现在我需要在模式中列出所有已定义的查询、突变、订阅?有可能吗?
谢谢
发布于 2021-06-08 07:28:20
您可以尝试让内省处于打开状态。[docs]
https://stackoverflow.com/questions/67879347
复制相似问题