我是IOT和firestore的新手。
我正在尝试使用云功能(MQTT)将数据保存到firestore。
以下是代码:
exports.helloPubSub = (event, callback) => {
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firestore);
const db = admin.firestore()
//admin.initializeApp();
console.log("Start");
var docRef = db.collection('users').doc('alovelace');
var setAda = docRef.set({
first: 'Ada',
last: 'Lovelace',
born: 1815
});
};
我在视图日志中遇到以下错误:
“函数执行耗时22毫秒,完成状态:'错误'”
任何建议
在一些更改后我收到错误 - 错误:Firebase配置变量不可用。请使用最新版本的Firebase CLI来部署此功能
我的package.json是
{
"name": "functions",
"description": "Cloud Functions for Firebase",
"dependencies": {
"@google-cloud/vision": "^0.12.0",
"async": "^2.5.0",
"consolidate": "^0.14.5",
"express": "^4.15.4",
"firebase-admin": "^5.4.0",
"firebase-functions": "^0.7.0",
"firebase-tools": "3.15.4",
"handlebars": "^4.0.10",
"jquery": "^3.2.1",
"js-levenshtein": "^1.1.3",
"json-query": "^2.2.2"
},
"private": true
}
当您收到以下错误消息时
错误:Firebase配置变量不可用。请使用最新版本的Firebase CLI来部署此功能
您需要更新firebase CLI以部署云功能
npm i --save firebase-functions @ latest
[email protected]中引入了一个重大更改,要求您的项目将firebase-functions升级到最新版本。
但是,firebase-functions @ latest还需要firebase-admin @ latest(在撰写此答案时需要[email protected]。一旦所有软件包升级,这个问题就应该解决了。
另一种方法是将全局firebase-tools降级到3.16.0,这样可以使用旧的firebase-functions和firebase-admin软件包。