我有个规矩
allow read: if request.auth.uid == resource.data.author
它不允许我用getDocs获取多个文档。
但它允许使用getDoc获取文档。
PS:我用这个来检索文档
const col = collection(db, collectionPath)
const documents = await getDocs(col)
得到了这个错误
Firebase错误:缺少权限或权限不足。
但这起作用了
const col = collection(db, collectionPath)
const document = await getDoc(doc(col,documentID))
1条答案
按热度按时间fzsnzjdm1#
您将安全规则与过滤器混淆了,您问题中的安全规则只允许所有文档满足该规则的查询通过,因此如果您尝试使用
getDocs(collection)
获取整个集合,它不会返回任何结果。相反,请尝试使用Author字段查询数据库,如本答案中的方法,该方法使用
whereEqualTo()
按字段筛选结果: