【问题标题】:How to configure REST controller for graphql-java without datafetcher?如何在没有数据提取器的情况下为 graphql-java 配置 REST 控制器?
【发布时间】:2020-08-26 12:09:48
【问题描述】:

我目前根据教程here 在 Springboot 中使用 DataFetcher for GraphQL-Java。这很好用,但我正在寻找另一种在不实现 DataFetchers 的情况下获取端点的方法,因为我必须(1)实现解析器方法,然后(2)为相应的 DataFetcher 创建一个单独的方法,这似乎是额外的工作.是否有另一种方法可以整合它以通过某种形式的 Rest 控制器公开我的 GraphQL API?我环顾四周,但没有找到任何可行的解决方案。最好(不确定是否相关)还有一种更好的方法来注释端点(目前在带有 RuntimeWiring 的链接示例中提供,我也希望将其删除)。

简而言之,我希望在 Springboot 中不需要 RuntimeWiring 和 DataFetcher(主要是为了删除同一方法的双重代码并提高可维护性),而是有另一种方式来配置全局 REST 控制器我的 GraphQL-Java 代码,同时还有另一种方法来注释端点(可能是在实现的方法之上的一些注释器)。

谢谢!

【问题讨论】:

    标签: java spring-boot rest graphql graphql-java


    【解决方案1】:

    通过使用graphql.kick.start.tools'SchemaParserGraphQLResolver 来修复它,如下所示:

    return SchemaParser.newParser()
            .files(schemaFiles)
            .scalars(scalars)
            .resolvers(resolvers)
            .dictionary(typeDictionary)
            .build()
            .makeExecutableSchema();
    

    解析器是使用this amazing plugin 作为代码生成实现的。

    【讨论】:

      猜你喜欢
      • 2019-09-20
      • 1970-01-01
      • 2021-10-26
      • 2019-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-06
      • 1970-01-01
      相关资源
      最近更新 更多