BTS*_*Dev 3 firebase typescript google-cloud-firestore
我正在尝试使用部署到 firebase 的函数将如下所示的新记录添加到 Firestore 文档中。该功能是用打字稿开发的:
功能:
admin.initializeApp(functions.config().firebase);
const db = admin.firestore();
const app = express();
app.put('/v2/MYENDPOINT/add', async (req, res) => {
try
{
const res1 = db.collection('Bars2')
.doc('NHn8368LhIhNWHTOaEDo')
.update({
name: req.body['name'],
address: req.body['address1']
}).then(function() {
res.status(200).send(`Created a new Real bar2: ${(res1)}`)
})
.catch(function(error) {
res.status(400).send("Error writing document: " + error);
});
//res.status(200).send(`Created a new Real bar2: ${(res1)}`)
}
catch (error)
{
res.status(400).send(`Real bar2 not created!!! ${error}`)
}
})
Run Code Online (Sandbox Code Playgroud)
我尝试使用邮递员添加此项目,但代码触发了错误:
邮递员新请求 { "name": "BAR C", "address": "qwerty" }
真正的 bar2 没有创建!错误:Update() 需要单个 JavaScript 对象或字段/值对的交替列表,后面可以跟一个可选的前提条件。参数“dataOrField”的值不是有效的 Firestore 值。无法使用“未定义”作为 Firestore 值(在“地址”字段中找到)。如果您想忽略未定义的值,请启用
ignoreUndefinedProperties。
Firestore 结构如附图所示。
我缺少什么想法吗?谢谢
[
错误信息的关键是:
无法使用“未定义”作为 Firestore 值(在“地址”字段中找到)。
您的地址字段未定义,这不是 Firestore 文档的有效值。这意味着req.body['address1']未定义。
也许您想说“地址”而不是“地址1”。
| 归档时间: |
|
| 查看次数: |
7737 次 |
| 最近记录: |