昨天(2020年10月12日),我的代码令人震惊。但是今天他写错了。
doc名称正确。 谢谢。
Future loadDataQuest() async {
while (i < 10) {
var fen = await FirebaseFirestore.instance
.collection('questions')
.doc(notSee[i])
.get()
.asStream()
.map((DocumentSnapshot doc) => Quest.fromJson(doc.id, doc.data()))
.toList();
quest.add(fen[0]);
i++;
}
print(quest);
}
错误:
W/Firestore(10953): (21.4.3) [Firestore]: Listen for Query(target=Query(questions/5WlbNnrXMCM8CNrnhBxl order by __name__);limitType=LIMIT_TO_FIRST) failed: Status{code=PERMISSION_DENIED, description=Missing or insufficient permissions., cause=null}
E/flutter (10953): [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] Unhandled Exception: [cloud_firestore/permission-denied] The caller does not have permission to execute the specified operation.
E/flutter (10953): #8 MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart)
E/flutter (10953): <asynchronous suspension>
答案 0 :(得分:0)
Sai Gopi Me的真实答案
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if false;
}
}
}
更改为此
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.auth != null;
}
}
}