通过GraphQL上的两个或多个字段进行查询

通过GraphQL上的两个或多个字段进行查询,graphql,express-graphql,Graphql,Express Graphql,假设我们想在GraphQL上查询多个字段,那么该怎么做呢 { book(id:"123",name:"book1") { id, name, authors{ id } } } 另外,如何过滤子字段,如基于姓名的作者 { book(id:"123",name:"book1") { id, name, authors(name:"author1"){ id } } } 我找到了这篇文章,但只

假设我们想在GraphQL上查询多个字段,那么该怎么做呢

{
  book(id:"123",name:"book1") {
    id,
    name,
    authors{
      id
    }
  }
}
另外,如何过滤子字段,如基于姓名的作者

{
  book(id:"123",name:"book1") {
    id,
    name,
    authors(name:"author1"){
      id
    }
  }
}
我找到了这篇文章,但只是想知道有没有更好的方法。

假设您正在构建一个GraphQL服务器,并且想知道如何在子字段上进行筛选

根据您使用的服务器库,您需要在父“Book”类型上编写“Field Resolver”。为每个已解析的父项调用一次字段解析器,这样您就可以引用已解析的父项类型(
Book
,在您的情况下)以及字段(
name:“author1”
)的参数,然后您就可以解析它了

您可能还希望使用,因为一个数据库调用来解析每个父字段的author子字段可能会导致大量数据库查询