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

时间:2018-05-22 08:18:20

标签: graphql

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

这样的事情:

query {
    myItem(size: 100, type: 2) {
        id,
        name
    }
    myItem(size: 150, type: 2) {
        id,
        name
    }
    myItem(size: 10, type: 1) {
        id,
        name
    }
}

1 个答案:

答案 0 :(得分:15)

是的,这是可能的,但不是这种形式。 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
  }
}

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

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