我收到错误
错误:参数"数据"不是有效的文件。输入不是简单的 JavaScript对象。
使用firebase admin SDK更新文档时。这里是Typescript代码。
var myDoc = new MyDoc();
myDoc.Public.Name = "Jonh Doe" //setup up content
admin.firestore()
.collection('MyDocs')
.doc("Id1")
.set(myDoc);
答案 0 :(得分:3)
如果其他人遇到同样的问题,解决方法是简单地使用Json来实例化对象,如下所示:
setVisible()
答案 1 :(得分:3)
我做了类似的事情:
var myDoc = <MyDoc> {
Public: {
Name: "Jonh Doe"
}
}
它在语义上是相同的,我只是觉得它有点清洁。
答案 2 :(得分:2)
我有同样的问题,在我的情况下我忘记在发送请求时将Content-Type:application/json
添加到我的标题中,然后该对象被视为字符串,我得到了该错误。
答案 3 :(得分:0)
您可以通过以下方式重新创建js对象: {...__data}
return refDB.set({...__data}).then((newData) => {
})
答案 4 :(得分:-1)
使用Postman
时,发布时必须选择JSON(application/json)
。这样会自动将所选的content-type
设置为标题。