【发布时间】:2017-07-07 14:29:56
【问题描述】:
我正在使用带有 Node.js 的 App Engine 柔性环境,并尝试在 Cloud Datastore 中存储和检索实体。
以下代码成功新建Event实体:
/* Create event */
router.post('/', function(req, res, next) {
const eventKey = datastore.key('Event');
datastore.save({
key: eventKey,
data: req.body
})
.then(() => {
console.log('New event created');
res.json({id: eventKey.id});
})
.catch((err) => { next(err); });
});
但是,当我提供之前返回的id 时,以下返回一个空数组:
/* Get an event */
router.get('/:id', function(req, res, next) {
console.log(req.params.id);
var eventKey = datastore.key(['Event', req.params.id]);
datastore.get(eventKey)
.then((event) => {
console.log(event);
res.json(event);
})
.catch((err) => { console.log(err); next(err); });
});
我似乎正确地使用了datastore.get,并且使用了what the docs is telling me to do。
知道为什么我无法获得我之前创建的实体吗?
【问题讨论】:
标签: node.js express google-cloud-datastore google-cloud-platform