在Firebase中创建包含自定义详细信息的用户

时间:2016-06-20 13:23:05

标签: javascript firebase firebase-realtime-database firebase-authentication

我在php中创建一个小应用程序,我使用firebase作为后端服务器来管理,验证用户。我有一个包含两个以上字段的注册表单,电子邮件和密码(姓名,电话号码,位置等),但在firebase文档(下面的代码)中,我们只能通过电子邮件和密码注册用户。所以,我的问题是如何保存用户的其他信息以及以后如何检索该信息?

firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) {
  // Handle Errors here.
  var errorCode = error.code;
  var errorMessage = error.message;
  // ...
});

1 个答案:

答案 0 :(得分:5)

您可以在firebase中创建一个引用来保留所有用户个人资料。

users: {
  "userID1": {
    "name":"user 1",
    "gender": "male" 
  },
  "userID2": {
    "name":"user 2",
    "gender": "female" 
  }
}

您可以使用onAuthStateChanged来检测用户何时登录

firebase.auth().onAuthStateChanged(function(user) {
  if (user) {
    // User is signed in.
  } else {
    // No user is signed in.
  }
});

然后,如果用户已登录,您可以使用它来检索用户的数据

firebaseRef.child('users').child(user.uid).once('value', callback)

如果您想拥有比Firebase提供的默认用户更多的字段,则必须自行管理用户个人资料

希望有所帮助