Firebase:通过存储在主体中的ID更新文档



我正在构建一个简单的Firebase API来更新一个简单值。我正在向urlappname.cloudfunctions.net/app/update/发送一个PUT请求,其中包含要在正文中更新的文档的ID:

{
"id": 10,
"value1": 11
}

然后我的函数看起来是这样的:

app.put('/api/update/', async (req, res) => {
try {
const sensorId = req.body.id;
await db.collection('sensors').doc(sensorId).set({
latestUpdateTimestamp: admin.firestore.FieldValue.serverTimestamp(),
latestValue1: req.body.value1,
}, {merge: true});
return res.status(200).send();
} catch (error) {
console.log(error);
console.log(req.body);
return res.status(500).send(error);
}
});

问题是,我得到一个错误:错误:参数的值"documentPath";不是有效的资源路径。路径必须是非空字符串注意console.log(req.body(显示正确的ID&值1。

我该怎么解决?

我的constsensorId是作为数字发送的,我需要将其更改为字符串才能使其工作:

const sensorId = req.body.id.toString();

最新更新