【问题标题】:Firebase Realtime Database stopped workingFirebase 实时数据库停止工作
【发布时间】:2018-12-25 14:54:40
【问题描述】:

在过去一个月左右的时间里,我一直在使用 Firebase 的实时数据库开发一个应用程序。 直到今天,它一直运行良好。由于某种原因,数据库查询完全停止工作。身份验证(电子邮件和密码登录、创建帐户、忘记密码)似乎一切正常,但由于某种原因,我的应用无法检索 Firebase 数据。

请记住,它已经工作了整整一个月,但我没有任何改变。

我什至去我的应用程序的以前版本进行测试。他们在测试时工作,他们也无法连接到数据库。 以前有没有人遇到过这个问题,如果有,您是如何解决的?

顺便说一下,这是我的代码,但它在片刻之前就可以工作,所以我怀疑它有什么问题。

var firebaseResponse = firebase.database().ref().orderByChild("country").equalTo(country)

fireBaseResponse.once('value').then(snapshot => {

snapshot.forEach(item => {
    const temp = item.val();
    data1.push(temp);
});

【问题讨论】:

  • 您的免费读/写配额用完了吗?你应该可以在谷歌云控制台中检查它
  • firebase status page 表示他们当前正在经历中断。如果问题是今天才开始的,那可能就是原因。
  • 我认为这是一次中断,因为它现在可以工作了。感谢帮助

标签: javascript firebase react-native firebase-realtime-database


【解决方案1】:

Firebase 控制台中奇怪的时间戳规则

我在我的一个项目中遇到了类似的问题。它从昨天开始加载数据,但今天它没有返回任何内容。

我不知道如何,但是当我在 Firebase 项目中创建规则时,默认添加了这个奇怪的 timestamp 规则。

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if request.time < timestamp.date(2020,8, 22);
    }
  }
}

所以我只是删除了request.time &lt; timestamp.date(2020,8, 22) 规则并用这个替换它。

allow read, write: if true;

注意:

allow read, write: if true; make your database public for read/write request. Add some security rules. 

有趣的提示:

我很确定问题出在我的 service.json 文件上。所以我检查了除了规则之外的所有内容,因为firebase默认情况下不添加时间戳规则。也许我从某个地方复制了规则。

我是怎么知道的?

靠运气和 logcat。

当我深入研究 logcat 时,我发现了这个警告信息

[Firestore]:侦听查询(deck_collection order by name)失败:状态{code=PERMISSION_DENIED,description=Missing 或权限不足。,cause=null}

【讨论】:

    【解决方案2】:

    今天 12:20(美国/太平洋)开始出现 Firebase 服务中断。 有关更多信息,您可以跟踪 Firebase 状态here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-13
      • 1970-01-01
      • 2019-10-25
      • 2021-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-17
      相关资源
      最近更新 更多