如何为用户在Firebase中存储比Auth模块允许的更多信息?

时间:2016-07-22 10:13:38

标签: angularjs ionic-framework firebase firebase-authentication

Firebase中的授权模块只允许我存储用户的电子邮件和密码;但是我想存储更多信息,比如:姓名,电话号码,他们拥有的游戏列表等等。我如何在firebase中这样做?

1 个答案:

答案 0 :(得分:3)

在我看来,选择Firebase进行数据存储是个不错的选择。因为,它易于使用且价格便宜。

出现此问题,您无法在Firebase控制台中为身份验证表设置其他数据。

它只显示电子邮件和唯一用户ID,并且不会显示用于注册的密码。

在Firebase中存储用户信息的简便方法之一如下。

登录或注册用户成功后,您将获得用户唯一的ID。

function(error, userData) {
  if (error) {
    console.log("Error creating user:", error);
  } else {
    console.log("Successfully created user account with uid:", userData.uid);
}

使用该用户ID,您可以在Firebase数据库中创建一个对象。

function(error, userData) {
  if (error) {
    console.log("Error creating user:", error);
  } else {
    var userId = userData.uid;
    var ref = new Firebase('https://docs-examples.firebaseio.com/web/data');
    var userRef = ref.child('users/' + userId);
    userRef.set({
      email: "userEmail",
      name: "userName",
      phoneNumber: "userPhoneNumber",
      password: "userPassword",
      interestedGames: {
         "game1": true,
         "game2": true,
         "game3": true
      }
    });
  }

您可以使用childRef检索用户的数据,如上所示, 您可以在用户登录时获得。