【问题标题】:Overriding standard ID scalar覆盖标准 ID 标量
【发布时间】:2020-10-24 23:15:03
【问题描述】:

我想使用 UUID 作为标识符,但标准标量 ID 被强制转换为字符串。 所以在我使用 ID 类型的任何地方都必须从字符串中解析 uuid。

我想知道是否可以用我自己的实现来覆盖 ID 类型? 这个标量类型有什么特殊含义,或者我可以使用我自己的标量 UUID 作为标识符?

【问题讨论】:

    标签: graphql graphql-java


    【解决方案1】:

    我们无法覆盖可用的缩放器,请参阅此link 进行讨论。

    您可以在代码中定义 UUIDScalar,同样您必须覆盖以下方法

    @Override
    public Object serialize(Object dataFetcherResult) {
        //
    }
    
    @Override
    public Object parseValue(Object input) {
        //
    }
    
    @Override
    public Object parseLiteral(Object input) {
        //
    }
    

    参考:Making custom scalars in graphql java

    幸运的是,为 UUID 制作自定义标量的代码可以在线获得,您可以使用 PR

    【讨论】:

    • 您提供的链接真的很有帮助。谢谢
    猜你喜欢
    • 1970-01-01
    • 2012-03-21
    • 2010-12-19
    • 2018-05-20
    • 1970-01-01
    • 2018-09-04
    • 2015-03-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多