1

这是我用于身份验证的内容:

   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 登录?有没有更好的办法?

4

1 回答 1

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了解更多信息

于 2013-09-07T19:42:56.987 回答