【问题标题】:Enforcing access permissions - AuthDirective drawback强制访问权限 - AuthDirective 缺点
【发布时间】:2020-10-05 01:49:07
【问题描述】:

我关注并使用了在 https://www.apollographql.com/docs/apollo-server/schema/creating-directives/#enforcing-access-permissions 找到的 AuthDirective。

它在查询和突变中运行良好。但是,我不理解在“强制访问权限”部分末尾附近发现的“这种方法的一个缺点是,如果在应用 AuthDirective 后将字段添加到架构中,它不能保证字段将被包装”。应用 AuthDirective 后如何将字段添加到架构中?它是在谈论从应用了 AuthDirective 的字段返回的结果吗?

【问题讨论】:

    标签: javascript graphql directive apollo-server apollo-server-koa


    【解决方案1】:

    如果显示的@auth 指令应用于一个类型,则该类型还可以应用另一个指令,将字段添加到该类型。例如,假设一个@id 指令将id 字段添加到它所应用于的任何类型。如果@id 指令在@auth 指令之后应用,则id 字段的解析器将永远不会像所有其他字段一样被@auth 指令修改。指令按照它们在类型定义中出现的顺序应用,因此很容易避免这种情况,但如果您大量使用指令,则需要注意这一点。

    【讨论】:

    • 谢谢!指令是添加可能未被前面指令包装的字段的唯一方法吗?
    猜你喜欢
    • 2021-11-29
    • 2021-01-20
    • 2013-07-27
    • 2021-12-18
    • 2017-04-29
    • 1970-01-01
    • 2021-04-02
    • 1970-01-01
    • 2019-09-17
    相关资源
    最近更新 更多