My rules:
{
"rules": {
"items": {
".read": "auth.uid != null && query.orderByChild == 'owner' && query.equalTo == auth.uid"
}
}
My query function:
const ref = firebase.database().ref("items").orderByChild("owner").equalTo(firebase.auth().currentUser?.uid).ref
ref.on('value', (v)=>{
console.log("ok: ", v.val())
}, (e)=>{
console.log("not allowed: ", e)
})
I keep getting "Permission denied". What am I doing wrong?
Found the reason. In my query, I called "....equalTo(...).ref"
Removing the .ref works:
const ref = firebase.database().ref("items").orderByChild("owner").equalTo(firebase.auth().currentUser?.uid)
ref.on('value', (v)=>{
console.log("ok: ", v.val())
}, (e)=>{
console.log("not allowed: ", e)
})