angularjs - AngularFire 错误 - 客户端无权访问所需数据
问题描述
这是我第一次尝试让 angularjs 与 firebase 对话。
我已经在测试模式下设置了 firebase 数据库,所以没有身份验证,但我一直收到错误
控制器代码是
.controller('FaqsCtrl', ['$scope', '$firebaseArray', '$uibModal', function($scope, $firebaseArray, $modal, $filter) {
var ref = firebase.database().ref().child("faq");
$scope.faqs = $firebaseArray(ref);
}])
JS链接如下
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.1/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.1/angular-route.min.js"></script>
<!-- Firebase -->
<script src="https://www.gstatic.com/firebasejs/5.5.4/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.5.4/firebase-database.js"></script>
<!-- AngularFire -->
<script src="https://cdn.firebase.com/libs/angularfire/2.3.0/angularfire.min.js"></script>
Firebase 规则是
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write;
}
}
}
错误是 - 错误:permission_denied at /faq:客户端无权访问所需数据。
我在网上找到的所有内容似乎都适用于旧版本的 Firebase
解决方案
转到您的应用程序的 Firebase 控制台 从侧面菜单中选择数据库 --> 从上面的选项卡中选择规则 --> 像这样更新您的规则。
{
"rules": {
".read": true,
".write": true
}
}
希望它能解决你的问题。
推荐阅读
- android - 不推荐使用 getLine1Number 获取设备标识符
- c - 即使我关闭了所有内容,某些管道文件描述符仍保持打开状态
- python - sqlite-problem-sqlite3-operationalerror-near-where-syntax-error
- google-sheets - Google 表格输出上的 googletranslate()
- javascript - Javascript:存储全局变量,以便以后可以重定向用户
- angular - 重载子组件路由重载父父组件
- python - 如何在运行时将元素添加到 Streamlit 网站?
- python - Python中的代码效率问题-如何减少基于节点之间的欧几里得距离生成网络时的经过时间
- c - C 中具有严格别名和严格对齐的面向对象模式的最佳实践
- swift - 如何使用 LinkPresentation 在 SwiftUI 中获取链接元数据?