Firebase Node SDK ref.on 和 ref.once 不起作用



我已经使用Firebase几年了,我没有遇到过这个 - 我相信它与Google帐户/Firebase帐户有关。

这个基本代码不会进入 ref.on(( 或 ref.once(( 函数 - 无论是成功还是错误回调。 这是怎么回事?

var firebase = require('firebase');
var admin = require('firebase-admin');
const serviceAccount = require('../firebase-security.json');
admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: 'https://swc-shockball3.firebaseio.com/'
});
var db = admin.database();
console.log('trying to get ref .once')
var itemsRef = db.ref('items');
itemsRef.once('value', function(snapshot) {
   // never gets here
  console.log(snapshot)
}, function(error) {
  // doesn't get here either
  console.log('error is')
  console.log(error)
})

我发现如果我控制台.log itemsRef 本身,它将返回一个庞大的 firebase-y 对象。 我也可以记录itemsRef.once.toString((,它会记录函数签名,但调用它实际上并不能正常工作。

我确保我对数据库的权限是可读/写为真(布尔值(。 我已经确保我的服务帐户的 json 是正确的 - 我什至完全吹走了我的 firebase 项目并创建了一个新项目。

什么给?

我打开了admin.database.enableLogging(true(,然后可以看到错误消息是Googal OAuth令牌无效授权错误。 我创建了一个新的服务帐户,没有变化。

但后来我只是将我的本地机器 (Windows 10( 时间设置更改为自动时间/自动日期。 那修好了!

最新更新