如何通过电子邮件和密码使用Firebase简单登录?

Firebase简单登录提供电子邮件/密码选项,我如何使用它? 从创建用户开始,为该用户存储数据,并将其记录到日志中。


有三个不同的步骤需要执行(让我们假设你有jQuery):

1.设置你的回调

var ref = new Firebase("https://demo.firebaseio-demo.com");
var authClient = new FirebaseAuthClient(ref, function(error, user) {
  if (error) {
    alert(error);
    return;
  }
  if (user) {
    // User is already logged in.
    doLogin(user);
  } else {
    // User is logged out.
    showLoginBox();
  }
});

2.用户注册

function showLoginBox() {
  ...
  // Do whatever DOM operations you need to show the login/registration box.
  $("#registerButton").on("click", function() {
    var email = $("#email").val();
    var password = $("#password").val();
    authClient.createUser(email, password, function(error,  user) {
      if (!error) {
        doLogin(user);
      } else {
        alert(error);
      }
    });
  });
}

3.用户登录

function showLoginBox() {
  ...
  // Do whatever DOM operations you need to show the login/registration box.
  $("#loginButton").on("click", function() {
    authClient.login("password", {
      email: $("#email").val(),
      password: $("#password").val(),
      rememberMe: $("#rememberCheckbox").val()
    });
  });
}

当登录成功完成时,您在步骤1中注册的呼叫将使用正确的用户对象调用,此时我们会调用doLogin(user) ,这是您必须实施的一种方法。

用户数据的结构非常简单。 它是一个包含以下属性的对象:

email :用户id电子邮件地址:用户的唯一数字(自动递增)ID

FirebaseAuthClient会自动为您验证您的firebsae,不需要进一步的操作。 您现在可以在安全规则中使用类似以下的内容:

{
  "rules": {
    "users": {
      "$userid": {
        ".read": "auth.uid == $userid",
        ".write": "auth.uid == $userid"
      }
    }
  }
}

这意味着,如果我的用户ID是42,那么只有我可以在example.firebaseio-demo.com/users/42进行书写或阅读 - 当我登录时 - 而不是其他人。

请注意,简单登录不会存储除用户ID和电子邮件以外的其他用户信息。 如果要存储有关用户的其他数据,则必须自己执行此操作(可能在createUser的成功回调createUser )。 您可以存储这些数据,因为您通常会将任何数据存储在Firebase中 - 只需要注意谁可以读取或写入此数据!


只需要让某人进入该线程并使用Firebase身份验证查找一些示例应用程序即可。 这里有两个例子

var rootRef = new Firebase('https://docs-sandbox.firebaseio.com/web/uauth');
......
.....
....

http://jsfiddle.net/firebase/a221m6pb/embedded/result,js/

http://www.42id.com/articles/firebase-authentication-and-angular-js/

链接地址: http://www.djcxy.com/p/74041.html

上一篇: How do I use Firebase Simple Login with email & password

下一篇: Get users by name property using Firebase