GQL nodejs库get(keys)返回结果中的键名

时间:2017-08-02 09:42:12

标签: node.js google-cloud-datastore google-cloud-platform gql

我目前正在使用带有密钥列表的NodeJS数据存储库执行批量GQL查询。

datastore.get(keys).then((results) => {
// Tasks retrieved successfully.
console.log("results", JSON.stringify(results));

res.send()
});

例如,如果我的密钥有1,2,3,4

的ID

当得到我的结果时,我喜欢

之类的东西
   [ {1: {key:value}}, {2: {key:value}},{3: {key:value}},{4: {key:value}}]

而目前我刚刚获得

   [ {key:value}, {key:value},{key:value},{key:value}]

结果全部成功返回,但不会返回带有结果的ID。无论如何都要检索id作为结果的一部分,所以我知道哪些结果与id在视觉上匹配,它们似乎不是按照传入的键的顺序?

1 个答案:

答案 0 :(得分:1)

因此,为了获取密钥,我只需要从results对象获取特定实体并获取[datastore.KEY]属性

e.g

 let entity = results[0];
 let key = entity[datastore.KEY];

其中datastore = require('@google-cloud/datastore')();

https://github.com/GoogleCloudPlatform/google-cloud-node/issues/1724