使用JavaScript和Firebase,我如何创建用户特定的对象
Using JavaScript and Firebase, how can I create user specific objects?
我在这里真正想做的是允许用户创建一个对象,这样只有该用户可以看到和更改它。例如:我的代码看起来像这样:
function createAccount(email, pass){
firebase.auth().createUserWithEmailAndPassword(email,pass).catch(function(error) {
var errorCode = error.code;
var errorMessage = error.message;
console.log(errorCode+":"+errorMessage);
});
}
我也有一个函数,我调用createAccountHome(),我希望是这样的结构:
function createAccountHome(){
firebase.database().ref().child('Profiles').push({
// user id : something to link object solely to this user
// data: data
});
}
我希望在这个阶段结束时,我可以创建一个帐户,然后为用户自动生成一个配置文件,以便用户只能对他/她自己的信息进行写访问。
最常用的存档方法是将用户数据保存在用户id下。所以不用push()而是用set(),像这样:
firebase.database().ref().child('Profiles').child(user.uid).set({
//data:data
})
为了确保用户只能看到和编辑他们自己的配置文件,你使用这些安全规则:
{
"rules": {
"Profiles": {
"$uid": {
".read": "auth != null && auth.uid ==$uid",
".write": "auth != null && auth.uid ==$uid"
}
}
}
}
对于一些阅读:链接到旧文档解释更多关于存储用户数据
相关文章:
- 如何在节点中为用户创建某种警报
- 如何为在客户端检查其密码的用户创建登录页面
- 如何防止用户创建重复ID
- 如何在完整日历中筛选出用户创建的事件
- 使用java和html基于当前用户创建重定向链接
- 在jquery或jquery移动中,如何将用户创建的链接传递到用户创建的按钮?我所说的用户是指最终用户,而不是我
- 用户创建的应用程序的安全性
- 为多个用户创建自动低分辨率和高分辨率pdf,png与inDesign
- 如何为用户创建唯一的网址
- 如何在我的网页上为iPhone用户创建一个注释,说明有一个应用程序
- 当用户创建新帖子时,张贴到墙上时出错
- 为不同的用户创建一个常规页面
- 如何为不同的用户创建Opencart模块
- Express js会话——仅为登录用户创建
- 根据用户创建文本字段's在JavaScript函数中的输入
- 从用户创建的选择字段中获取所有选定项目的值
- 在数据库中保存用户创建的javascript是否安全
- 如何为用户创建带有构建选项的流星JS包
- 如何在Meteor中验证服务器上的用户创建
- 如何获取用户文本输入用户创建输入的值,jQuery