我在Google Firebase帐户中建立了一个新数据库。我的Google Firebase门户中的数据库规则如下所示:
您的安全规则被定义为公共规则,因此任何人都可以窃取,修改或删除数据库中的数据
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write;
}
}
}
但是,当我尝试从Angular 6应用连接时,我的控制台出现以下错误:
@ firebase /数据库:FIREBASE警告:设置为/用户失败:Permission_denied 未处理的承诺被拒绝:PERMISSION_DENIED:权限被拒绝
任何想法可能是什么问题?当我搜索错误消息时,似乎所有建议的解决方案都可以配置数据库安全规则,如上面的代码所示。
答案 0 :(得分:1)
您没有将代码添加到设置数据的位置,但是我相信您使用的是firebase
而不是firestore
。
这就是为什么即使在firestore上设置权限也无法避免此错误的原因,因为@firebase/database
用于firebase
实时数据库,而不是firestore
。
改为使用角度消防服务。
答案 1 :(得分:1)
即使允许读取和写入权限,我在访问Firebase数据库时也面临相同的问题。 就我而言,我正在更新“ Cloud Firestore”上的设置-查看显示“数据库”的控制台部分。它应该是“实时数据库”,您也可以从具有“ databaseURL”密钥的environment.ts文件中验证数据库类型。
确保要更新的数据库指向您的environment.ts文件中的设置。
{
/* Visit https://firebase.google.com/docs/database/security to learn more about security rules. */
"rules": {
".read": true,
".write": true
}
}