问题描述
从文档中,我这样做:
K
string
我在每个页面上都这样做,但它似乎在个人资料页面上不起作用。这是我在数据库中看到的: 1
这不是一次性的。几乎所有用户都有类似的情况。这可能是什么原因?为什么 ondisconnect 不会触发?
如果需要,这里是网页:magicconnects.com/profile。
非常感谢您的帮助!
编辑:添加安全规则:
createSelectOptions<string>([
{ a: "a",b: "b" },{ c: "c",d: "d" },],"k","v") // no error Now ?
解决方法
问题似乎是在 onDisconnect
代码运行时令牌可能已过期。因此,您需要允许未经身份验证删除相关数据。
我能想到的最安全的方法是在单个连接节点(以 -M...
开头的节点)的级别上执行此操作,以便只有知道密钥才能删除节点。
看起来像这样:
{
"rules": {
"users": {
"$uid": {
".read": "auth != null",".write": "auth != null && auth.uid == $uid"
"$pushid": {
".write": "!newData.exists()"
}
}
}
}
}
由于规则是 OR 运算在一起的,因此 ".write": "!newData.exists()"
是当有人知道 $pushid
时的额外津贴。