验证newData是否是具有firebase数据库规则的数组

时间:2017-07-25 00:32:16

标签: firebase firebase-realtime-database firebase-security

有没有办法验证newData是否是firebase规则中的数组? 类似的东西:

"node" : { ".validate" : "newData.isArray()" }

1 个答案:

答案 0 :(得分:6)

没有规则来检测数据是否是数组。

Firebase本身不存储数组。它将数据存储为常规JSON对象,数字作为键。所以

["one", "two", "three"]

存储为:

"0": "one"
"1": "two"
"2": "three"

您可以检查数据是否有子0

".validate" : "newData.child("0").exists()"

但这又是经验丰富的Firebasers通常建议不要使用数组的众多原因之一。有关更多原因,请参阅this blog post