[英]Firebase Database Permission denied on 2 root child
有我的數據庫規則:
"Results" : {
".indexOn":["namaGroup"],
".read": "auth != null",
".write": "auth !=null",
},
這是我的代碼:
private void updateScore(final String namaGroup, final RankingCallback<Ranking> callback) {
questionScore = FirebaseDatabase.getInstance().getReference();
final DatabaseReference ref1= questionScore.child("Results");
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for (DataSnapshot ds:snapshot.getChildren()) {
String key = ds.getKey();
DatabaseReference ref = questionScore.child(key);
ref.orderByChild("namaGroup").equalTo(namaGroup);
ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for (DataSnapshot ds : snapshot.getChildren()) {
GroupScore ques = ds.getValue(GroupScore.class);
sum += Integer.parseInt(String.valueOf(Objects.requireNonNull(ques).getScore()));
}
Ranking ranking = new Ranking(namaGroup, sum);
callback.callBack(ranking);
Log.d("TAG", ranking.getNamaGroup());
Log.d("TAG", String.valueOf(ranking.getScore()));
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
};
ref.addListenerForSingleValueEvent(eventListener);
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
};
ref1.addListenerForSingleValueEvent(valueEventListener);
我收到下一個錯誤作為警告日志: DatabaseError: Permission denied 。
我想通過像我的代碼一樣從表結果中循環快照來總結每個成員的分數:數據庫結構
試試這個規則
"Results" : {
".indexOn":["namaGroup"],
".read": true,
".write": "auth!=null",
},
希望這有助於隨時要求澄清...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.