指令可以很好地改变解析器的行为,但是有没有一种方法可以直接用它们改变公开的模式呢?
例子
预期的超级用户架构
type Query { getBooks: [Book] getAuthors: [Author] }
需要普通用户架构
type Query { getBooks: [Book] }
一个定义来构建它们
type Query { getBooks: [Book] @allow(scopes: ["superuser"]) getAuthors: [Author] }
作用域将通过给定的上下文定义,因为我将为每个可能的作用域构建一个架构。