我正在尝试将 Firebase 集成到我的 Angular 应用中。我从互联网上阅读了许多有关此主题的教程,其中大多数教程建议我为Firebase数据库定义以下规则(这意味着
允许读写权限):
{
"rules": {
".read": true,
".write": true
}
}
但是默认情况下,我的数据库规则如下:
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write;
}
}
}
当我尝试添加大多数教程建议的规则(“规则...”)时,发生了错误:'Error saving rules - Line 9: Unexpected '{'.
(我还尝试用教程建议的规则替换原始规则,同样的错误)
似乎所有教程都没有说“ service cloud.firestore ...”的含义是什么(或者它们已经过时了?)
那么定义规则的正确方法是什么?
我想做的是使“规则...”工作正常,因为当我尝试在我的角度应用程序中访问我的firebase数据库时,出现以下错误:
permission_denied at /employees: Client doesn't have permission to access the desired data
答案 0 :(得分:2)
我有同样的问题。默认情况下,Firebase向您显示Cloud Firestore,而不向您显示实时数据库。转到firebase控制台->“数据库”,然后选择“实时数据库”(您的教程使用的数据库)。
您可以在这里找到它:
如果您想使用Cloud Firestore,您正在寻找的(允许读写权限)是:
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if true;
}
}
}
您可以在Cloud Firestore security section或Realtime Database security section处找到更多信息
答案 1 :(得分:0)