如何记住使用AngularFire和Firebase简单登录的已登录用户?

时间:2013-09-07 05:29:01

标签: firebase angularfire

我正在使用身份验证:

   new FirebaseSimpleLogin(new Firebase("firebaseURL"), function(error, user) {
      if (error) {

      } else if (user) {
        // angular ngCookies service
        $cookies.user = args.user.email;
      } else {

      }
    });

要存储每个用户的所有待办事项,我只是将他的电子邮件ID存储在每个待办事项中。这种方法的问题是我可以修改cookie替换别人的电子邮件然后我可以看到他们的待办事项。

有没有办法知道谁使用Firebase简单登录而不是查看cookie?还有更好的办法吗?

1 个答案:

答案 0 :(得分:3)

您可以使用angularFireAuth,它将模型绑定到用户身份验证状态:

function MyController($scope, angularFireAuth) {
  var ref = new Firebase("https://<my-firebase>.firebaseio.com/");
  angularFireAuth.initialize(ref, {scope: $scope, name: "user"});
}
如果用户已注销,则 $ scope.user将为null,并在用户登录时设置为用户对象。了解更多信息,请访问http://angularfire.com/documentation.html#authentication