【发布时间】:2022-08-06 21:13:10
【问题描述】:
我尝试阅读前几个答案,但似乎没有一个与我目前掌握的答案具有相同的规则。
当我尝试调用 getDocs() 函数时(使用反应)
let userInfo = await getDoc(doc(db, chargerInfo.userRef));
我似乎收到了错误FirebaseError: Missing or insufficient permissions.
我该怎么做才能不出现此错误?以下是我的规则
match /devices/{id} {
allow read: if request.auth != null;
allow update: if request.auth != null;
}
```
-
您确定用户在查询之前已登录吗?您可以尝试记录用户信息以确保这一点吗?
\"db\"在哪里定义? -
@Dharmaraj 我从
const db = getFirestore();获取 db(getFirestore() 是从 firebase/firestore 导入的) -
您是否尝试获取单个文档(因为您的问题是
getDocs())?在这种情况下,您可以登录chargerInfo.userRef并分享它的价值截图吗? -
@DharmarajchargerInfo.userRef 记录设备/TEST-0031。 auth.currentUser.uid 也会记录正确的用户 ID
-
chargerInfo.userRef来自哪里?它是文档参考类型字段吗?如果是,那么您可以直接使用getDoc(chargerInfo.userRef)。您是否还尝试在查询之前记录用户 UID 以确保用户已登录?
标签: javascript firebase google-cloud-firestore firebase-security