首页 > 解决方案 > 使用 Firestore 规则验证数组

问题描述

在我的 HTML 页面中,我有一组五个复选框。它们的值为 1、2、3、4、5。

在这些复选框所属的对象中,我将它们保存为一个数组。因此,如果用户选择选项 2,4,5,我将其存储为 [2,4,5]。

当我尝试在 Firebase 规则中验证该数组时,我被困在了原地。有没有办法进行这样的验证?

我想确保像 [5,6,7] 这样的数组不会通过 Firestore 规则,但像 [1,3,4,5] 这样的数组会。

标签: google-cloud-firestorefirebase-security

解决方案


Firestore 文档中的数组类型字段在安全规则中显示为列表类型对象。您可以使用它的hasOnly方法来确定 List 是否仅包含某些元素。

request.resource.data.arrayField.hasOnly([1,2,3,4,5)

推荐阅读