我正在尝试制作一个简单的直接消息部分。我有一个包含一些元信息的文档和一个包含单个消息的子集合。当我尝试获取消息时,规则在模拟器中有效,但在 js 中我每次都得到:Uncaught (in promise) FirebaseError: Missing or enough permissions。
mongodb结构:
聊天室
元信息(senderId/Name、recieverId/Name、时间戳等)
消息
姓名
文本
时间戳
消息标识
房间号
规则:
match /chatRooms/{chatRoom} {
allow create: if request.auth.uid != null;
allow update, delete: if resource.data.uid == request.auth.uid;
function isChatPartner() {
return parentDoc().receiverId == request.auth.uid || parentDoc().senderId == request.auth.uid;
}
function parentDoc() {
return get(/databases/$(database)/documents/chatRooms/$(chatroom)).data;
}
match /messages/{message} {
allow read: if isChatPartner();
}
}
js请求:
db.collection("chatRoom").doc(_roomId).collection("messages").get().then(msg => {
console.log(msg);
})
有谁知道可能有什么问题?
BIG阳
相关分类