reactjs - 如何在firebase中将uid作为参数传递?反应+火力基地
问题描述
我正在使用 react 并已使用 firebase auth 登录用户并存储 uid 应用程序上下文。
Security rules:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read;
allow write: if
request.auth!=null;
}
}
}
我想保留这个安全规则。我想用uid提出请求。我怎么做?这种方式会出错。
await db.collection('users').doc(uuid).set({name:name});
未捕获(承诺) FirebaseError:缺少或不足的权限。
如何在写入数据库时将 uid 作为参数传递给每个请求?
解决方案
目前尚不清楚您现在如何初始化uuid
,但应该是:
firebase.auth().onAuthStateChanged((user) => {
if (user) {
var uuid = user.uid;
await db.collection('users').doc(uuid).set({name:name});
} else {
// User is signed out
// ...
}
});
此代码段直接来自 Firebase 文档中有关获取当前用户的信息。
推荐阅读
- systemc - SC_CTHREAD 中的时钟类型
- python - 为什么我的数据没有被屏蔽?
- xpath - 用于选择元素内部文本的 Xpath
- amazon-web-services - 创建 Redshift 生产的副本,每个表中的 # 条记录有限
- powershell - 计算 2 个文件夹中同一文件之间的创建时间
- scala - Spark:通过对临时表执行 sql 查询来创建临时表
- sql - 内存优化数据库恢复
- c# - 获取并打印 DropDownList ASP.NET MVC 中的选定项目作为 h3 标头
- c - MPI_SEND 和 MPI_RECIEVE 没有被编译引用
- javascript - 在量角器测试期间,DOM 元素未正确显示