[英]How to get all graphql schema query, mutation, subscribe
我正在使用帶有 graphql 和 graphql-compose 的 nodejs,所以我將方案定義為
schemaComposer.Query.addFields({
Me: MyResolvers,
Info: MyInfoResolvers,
Post: PostResolvers
})
schemaComposer.Mutation.addFields({
Login: MyLoginResolvers,
Register: RegisterResolvers
})
schemaComposer.Subscription.addFields({
Subscribe: Mysubscribe
})
所以任何 function 來獲取所有查詢、變異和訂閱列表數組示例,我需要打印到
[
{ 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"]
}
我可以使用 parse function from graphql library 來解析請求中的查詢,以使用
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
現在我需要列出所有定義的查詢、突變、訂閱模式? 可能嗎?
謝謝
您可以嘗試保持內省。 [文檔]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.