【问题标题】:GraphQL + Java How to get Query String in Query Resolver class?GraphQL + Java 如何在查询解析器类中获取查询字符串?
【发布时间】:2019-09-10 05:22:48
【问题描述】:

我能够启动 Spring Boot GraphQL Java Server(使用 GraphiQL 作为用户界面来运行查询)。现在我正在尝试将 query string 从 GraphiQL(实际上是发送到 /graphql 端点的有效负载中的查询)传递到 Query Resolver 类中。我尝试了不同的选择,但没有任何帮助。

public class Query implements GraphQLQueryResolver {
...
public Iterable<Book> findAllBooks() {
    String query = ** WHAT TO DO?? **
    return bookRepository.findAll();
  }
}

【问题讨论】:

    标签: graphql graphql-java


    【解决方案1】:

    你可以定义一个带参数的查询,然后在GraphQLQueryResolver中编写java代码

    例如:

    架构

    type Query{
      findBookByTitle(title:String!):Book!
    }
    

    解析器

    public Book findBookByTitle(String title){
      //you can get the title
    }
    

    【讨论】:

    • 我可以运行应用程序、发送查询并获得回复。在这里,我试图在 Query.finaAllBooks() 方法中获取实际查询。例如,如果我的查询是:{ findAllBooks { id isbn title pageCount author { firstName lastName } } } 那么在我的实际问题字符串查询中有这个。
    猜你喜欢
    • 2019-10-14
    • 2020-02-11
    • 1970-01-01
    • 2020-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-02
    • 1970-01-01
    相关资源
    最近更新 更多