我正在使用firebase数据库进行项目。我正在尝试检索数据2次。第一次工作得很好,但第二次不能正常工作。这是我的代码:
<script>
// Initialize Firebase
var config = {
apiKey: "-------------",
authDomain: "-------------",
databaseURL: "-------------",
projectId: "-------------",
storageBucket: "-------------",
messagingSenderId: "-------------"
};
firebase.initializeApp(config);
// Get a reference to the database service
var location = firebase.database().ref('loc/');
location.once('value').then(function(snapshot) {
init(snapshot);
});
</script>
然后在不同的脚本标签中,我放置了所有功能
<script>
function init(snapshot) {
console.log(snapshot.location) //there's no permission issue here
var onChangeHandler = function(name) {
myFunction(name);
};
//to get input from user
$('.drc').click(function(){
var text = $(this).text();
onChangeHandler(text);
});
}
function myFunction(name) {
var find = firebase.database().ref('routes/'+name);
//the permission issue start here
routes.once('value').then(function(snapshot) {
var routesName = snapshot.name;
console.log(routesName);
});
}
</script>
当然我已经制定了规则:
{
"rules": {
".read": "auth != false",
".write": "auth != false"
}
}
我的错误:
未捕获(在承诺中)错误:在/ routes / AL上的permission_denied:客户端无权访问所需数据。
我的代码出了什么问题?为什么我第二次无法访问它?