是否可以使用graphql多次查询同一个字段

Oli*_*Oli 10 graphql

我想要做的是使用不同的参数多次查询特定字段.这可能在GraphQL中吗?

像这样的东西:

query {
    myItem(size: 100, type: 2) {
        id,
        name
    }
    myItem(size: 150, type: 2) {
        id,
        name
    }
    myItem(size: 10, type: 1) {
        id,
        name
    }
}
Run Code Online (Sandbox Code Playgroud)

ten*_*shi 22

是的,这是可能的,但不是这种形式.GraphQL服务器将拒绝这样的查询,因为多次使用相同名称但具有不同参数的字段.

您需要使用别名:

query {
  item1: myItem(size: 100, type: 2) {
    id,
    name
  }
  item2: myItem(size: 150, type: 2) {
    id,
    name
  }
  item3: myItem(size: 10, type: 1) {
    id,
    name
  }
}
Run Code Online (Sandbox Code Playgroud)

您可以在此处找到有关别名的更多信息:

http://graphql.org/learn/queries/#aliases