过去一个月左右,我一直在使用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);
});
答案 0 :(得分:3)
Firebase服务中断于今天12:20(美国/太平洋地区)开始。 有关更多信息,您可以跟踪Firebase状态here
答案 1 :(得分:0)
在我的一个项目中,我遇到了类似的问题。从昨天开始它一直在加载数据,但是今天它什么也不返回。
我不知道如何,但是在我的Firebase项目中创建规则时,默认添加了这个奇怪的时间戳规则。
string htmlFragment = @"<html><head><script type='text/javascript'>" +
"function a(){return '10';};" +
"function b(){return '20';};" +
"function c(){return '30';};" +
"</script></head><body>" +
"<div id = 'myDiv'>I AM CONTENT</div></body></html>";
所以我刚刚删除了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 < timestamp.date(2020,8, 22)
allow read, write: if true;
我非常确定问题出在我的service.json文件中。因此,我检查了除规则以外的所有内容,因为firebase默认情况下不添加时间戳规则。也许我是从某处复制规则的。
通过运气和logcat。
当我深入研究logcat时,我发现了此警告消息
[Firestore]:侦听查询(按名称的deck_collection顺序):状态{code = PERMISSION_DENIED,description =缺少权限或权限不足,cause = null}