express graphql:如何删除外部;“数据”;对象层。

express graphql:如何删除外部;“数据”;对象层。,express,graphql,express-graphql,Express,Graphql,Express Graphql,我正在用GraphQL替换现有的REST端点 在现有的REST端点中,我们返回一个JSON数组 [{ "id": "ABC" }, { "id": "123" }, { "id": "xyz" }, { "id": "789" } ] GraphQL似乎将数组包装在另外两个对象层中。有没有办法删除“数据”层和“客户端”层 答复数据: { "data": { "Client": [ { "id":

我正在用GraphQL替换现有的REST端点

在现有的REST端点中,我们返回一个JSON数组

[{
    "id": "ABC"
  },
  {
    "id": "123"
  },
  {
    "id": "xyz"
  },
  {
    "id": "789"
  }
]
GraphQL似乎将数组包装在另外两个对象层中。有没有办法删除“数据”层和“客户端”层

答复数据:

{
  "data": {
    "Client": [
      {
        "id": "ABC"
      },
      {
        "id": "123"
      },
      {
        "id": "xyz"
      },
      {
        "id": "789"
      }
    ]
  }
}
我的问题是:

{
  Client(accountId: "5417727750494381532d735a") {
    id
  }
}

不,这就是GraphQL的全部目的。使用单个endoint,并允许用户通过以查询格式(与RESTAPI相反)指定输入来获取不同类型/粒度的数据,然后将其映射到返回的JSON输出

“数据”充当已查询的不同实体的父级/根级容器。如果返回的JSON数据中没有这些键,就无法隔离相应的数据。e、 g

您的上述查询可以修改为包含其他实体,如所有者

{
客户(账号:5417727750494381532d735a){
身份证件
}
所有者{
身份证件
}
}