我目前正在使用带有密钥列表的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在视觉上匹配,它们似乎不是按照传入的键的顺序?
答案 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