在我的 Nodejs 应用程序中,我尝试使用 firebase 3.0.2 模块将一些数据设置到名为“回调”的 Firebase 位置,如下所示。
var firebase = require('firebase');
firebase.initializeApp({
serviceAccount: "path/to/serviceAccountCredentials.json",
databaseURL: "<My firebase url>"
});
var db = firebase.database();
var callbackref = db.ref("callback");
console.log("Before Call");
callbackref.set("Some data", function (error) {
console.log("Callback Executed");
});
console.log("After Call");
执行上述代码后,我可以在控制台中看到如下消息
"Before Call"
"After Call"
我可以在我的 Firebase 控制台中看到更新后的数据到我的“回调”位置,但这里唯一的问题是我从未在控制台中收到“回调已执行”消息。
我的Nodejs版本是5.5.0 操作系统为Windows 10。
我的问题是从未执行完成回调。我在这里缺少什么?
最佳答案
3.0.3 中修复了一个错误,该错误会导致您的代码运行,但如果在没有适当权限的情况下提供无效的服务帐户,则身份验证会默默失败。尝试升级到版本 3.0.3,并尝试通过 firebase.database.enableLogging(true)
打开调试。我有一种感觉,您需要通过说明 here 重新生成您的服务帐户 JSON 文件。 .
关于node.js - 完成回调未在 firebase 3.0.2 中的 set 方法上执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37319390/