[英]Flutter Firestore permission denied
Receiving this error when trying to read from my firebase firestore collection.尝试从我的 firebase firestore 集合中读取时收到此错误。 It's a public read only collection
这是一个公共只读集合
E/flutter ( 2038): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: [cloud_firestore/permission-denied] The caller does not have permission to execute the specified operation.
E/flutter ( 2038): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: [cloud_firestore/permission-denied] 调用者没有执行指定操作的权限。
Here's my security rules这是我的安全规则
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /trainers {
allow read : if true;
}
}
}
I've also tried setting the rules like this我也试过像这样设置规则
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /trainers {
allow read;
}
}
}
My query我的查询
firebaseDb.collection("trainers").get().then((value) => {
print(value)
});
main func主要功能
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
setSystemOverlay(getIsDarkMode());
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
runApp(const MyApp());
}
Try changing your security rules to the following:尝试将您的安全规则更改为以下内容:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if true;
}
}
}
I managed to find the solution, the rules syntax needs to be like so我设法找到了解决方案,规则语法需要像这样
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /trainers/{document=**} {
allow read, write;
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.