小编cho*_*kie的帖子

如何使用 Firebase 身份验证发送带有 request.auth != null 的 Firestore 请求?

我试图允许用户videoFeedback从网络应用读取和写入我的 Firestore集合,并收到“权限缺失或不足”错误。如何确保使用正确的用户身份验证(或任何身份验证)发送我对 Firestore 的请求?

这是针对使用 Firestore 和匿名 Firebase 身份验证的 Angular 应用程序。我已经设置了一个匿名用户。我想videoFeedback从网络应用程序而不是后端向我的收藏添加一个文档。我已经阅读了 Firestore 文档的官方页面: 使用 Firebase 进行匿名 身份验证在网站上使用 Firebase 身份验证入门 等等,并阅读有关此主题的所有 SO 问题。

我的 Firestore 对象已经正确设置(我知道,因为如果我的安全规则不需要非空 request.auth,我可以读/写数据库)。

非常感谢您的帮助。

private db: AngularFirestore;

public initFirebaseApp() {
    firebase.initializeApp(this.firebaseConfig);
}

public anonymousAuth() {
    firebase.auth().signInAnonymously().catch(function(error) {
        console.log("ERROR: " + String(error.errorCode) + 
            " " + String(error.errorMessage))
    });
    console.log("User is authorized");
}

this.initFirebaseApp();
this.anonymousAuth();

let date_created = new Date().toLocaleString();
let feedback = {
    "feedback": "FAKE_FEEDBACK", 
    "rating": -1,
    'created': date_created,
};

firebase.auth().onAuthStateChanged(function(user) {
    if …
Run Code Online (Sandbox Code Playgroud)

firebase firebase-authentication google-cloud-firestore

5
推荐指数
0
解决办法
1506
查看次数