答案 0 :(得分:0)
您可以use your login system with Firebase验证。您只需在服务器(或云功能)上使用Custom Tokens和Firebase Admin SDK即可。我强烈推荐这一点,因为它可以很容易地为您的数据库设置简单的规则。
现在,如果您不打算这样做,可以使用昂贵的解决方法,但不推荐。
您可以创建一个包含所有被阻止用户的新节点:
{
"blocked":{
"username1":true,
"username2":true,
"username4":true,
"username5":true,
"username7":true
}
}
然后,当您将数据写入数据库时,再添加一个字段,其中包含当前正在写入数据库的用户的用户名。我看到你的聊天节点已经有了这个字段,但是如果你有更多的节点,你可能也希望在那里添加字段。
您的数据库规则如下:
{
"rules":{
"chats":{
"$chatId":{
".read":true,
".write":"root.child('blocked').child(newData.val().user).exists()"
}
}
}
}