如何解决无法从Firebase检索数据库实例
由于某些原因,我无法从Firebase数据库检索数据。请看看我的代码和规则。谢谢
我的代码
List<EvaluatingImage> imageInfo = [];
Future<Query> queryUsers() async {
// DatabaseReference referenceData =
// FirebaseDatabase.instance.reference().child('pictures');
DatabaseReference referenceData =
FirebaseDatabase.instance.reference().child('users');
referenceData.once().then((DataSnapshot dataSnapShot) {
Map<dynamic,dynamic> values = dataSnapShot.value;
values.forEach(
(key,value) {
print(value['email']);
},);
});
}
规则
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
// This rule allows anyone with your database reference to view,edit,// and delete all data in your Firestore database. It is useful for getting
// started,but it is configured to expire after 30 days because it
// leaves your app open to attackers. At that time,all client
// requests to your Firestore database will be denied.
//
// Make sure to write security rules for your app before that time,or else
// all client requests to your Firestore database will be denied until you Update
// your rules
match /{document=**} {
//allow read,write: if request.time < timestamp.date(2020,9,28);
allow read,write : if true;
}
}
}
相反,我收到此错误
W/SyncTree(29984): Listen at /users failed: DatabaseError: Permission denied
E/flutter (29984): [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] Unhandled Exception: DatabaseError(-3,Permission denied,)
E/flutter (29984):
请帮助我!非常感谢您的帮助。
解决方法
以上规则适用于使用Firebase实时数据库的firestore,您需要将实时数据库的规则更改为以下内容:
{
"rules": {
".read": true,".write": true
}
}
注意:以上规则将使所有用户都可以从数据库读取和写入数据,仅使用上述规则进行开发
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。