一种在Firebase中强制使用唯一属性的方法

时间:2013-05-02 13:19:55

标签: rest firebase firebase-security

在我的Firebase中,我有许多数据项,在这种情况下,它们是公告。每个公告都有一个“ID”的子属性,每个公告都是唯一的。当我通过休息将公告发布到数据库时,有没有办法强制执行ID是唯一的?也就是说,如果我尝试两次添加具有相同ID的通知,则第二个会失败。我怀疑我可以用规则做点什么,但我不确定。

谢谢, 德克兰

1 个答案:

答案 0 :(得分:3)

实现这一目标的最佳方法是通过ID本身识别每个公告,而不是将其作为子属性。然后,您可以使用以下安全规则:

".write": "!data.exists()"

如果有人尝试使用已存在的ID编写公告,则写入规则将评估为false,因此不允许使用。

您可以使用push()方法生成按时间顺序排列的唯一标识符。