【发布时间】:2013-05-02 13:19:54
【问题描述】:
在我的 Firebase 中,我有许多数据项,在本例中它们是公告。每个公告都有一个“ID”的子属性,对于每个公告来说都是唯一的。当我通过休息向数据库发布公告时,有没有一种方法可以强制 ID 是唯一的?也就是说,如果我尝试添加两次具有相同 ID 的公告,第二次就会失败。我怀疑我可以用规则做点什么,但我不确定。
谢谢, 德克兰
【问题讨论】:
标签: rest firebase firebase-security
在我的 Firebase 中,我有许多数据项,在本例中它们是公告。每个公告都有一个“ID”的子属性,对于每个公告来说都是唯一的。当我通过休息向数据库发布公告时,有没有一种方法可以强制 ID 是唯一的?也就是说,如果我尝试添加两次具有相同 ID 的公告,第二次就会失败。我怀疑我可以用规则做点什么,但我不确定。
谢谢, 德克兰
【问题讨论】:
标签: rest firebase firebase-security
实现这一点的最佳方法是通过 ID 本身来识别每个公告,而不是将其作为子属性。然后您可以使用如下安全规则:
".write": "!data.exists()"
如果有人尝试使用已经存在的 ID 编写公告,则写入规则将评估为 false,因此将被禁止。
您可以使用push() 方法生成按时间顺序排列的唯一标识符。
【讨论】: