Firebase身份验证令牌的存储

唐德里·泰勒

我有一个Firebase AngularJS应用程序,正在使用FirebaseSimpleLogin进行身份验证,但是在理解如何在应用程序中持久保存登录用户时遇到了一些麻烦。每次登录并刷新页面时,我似乎都不再通过身份验证。我了解登录后会生成一个用于验证用户身份的令牌,但是我是否需要在每个页面上使用此令牌对他们进行身份验证,如果是这样,这会在我的应用程序和Firebase之间产生任何类型的开销吗?

我的应用程序中执行登录/验证的部分

var ref = new Firebase("https://xxx.firebaseio.com/");
angularFireAuth.initialize(ref, {scope: $scope, name: "user", path:"/login"});

    // Used to authenticate user at a later time
$scope.auth = function(token, callback)
{

    ref.auth(token, function(error, data) {

        if(error) 
        {
            console.log("Login Failed!", error);
        } 
        else 
        {
            $scope.$apply(function()
            {
                $scope.user = data.auth;
            }); 
        }

        if (typeof callback === 'function')
        {
            callback(error,data);
        }

    });
};


    // Login to fetch authentication token to be used by $scope.auth()
$scope.login = function()
{   
    angularFireAuth.login("password", { 
        email: $scope.credentials.email,
        password: $scope.credentials.password
    });
};


    // On login stores user within $scope
$scope.$on("angularFireAuth:login", function(evt, user) {
    $scope.$apply(function()
    {
                 // Is it possible to save this user accross my application not just in this $scope
             $scope.user = user; 

    });
});

这是捕获电子邮件/密码组合的标记

<div class="container-single" center>
               <h3>Sign in</h3>
               <input type="text" ng-model="credentials.email" placeholder="Username" />
               <input type="password" ng-model="credentials.password" placeholder="Password" />
               <input type="checkbox" id="checkbox-1" name="checkbox-1" /> <label>Remember my password</label>
               <button ng-click="login()">Sign in</button>
           </div>
一只蚂蚁

如果您使用的是angularFireAuth,则无需自己进行任何身份验证。只需检查该$scope.user值以查看用户是否在每个视图中都已登录。

var ref = new Firebase("https://xxx.firebaseio.com/");
angularFireAuth.initialize(ref, {scope: $scope, name: "user", path:"/login"});

$scope.login = function() {   
  angularFireAuth.login("password", { 
    email: $scope.credentials.email,
    password: $scope.credentials.password
  });
};

成功登录后,$scope.user将自动设置为用户详细信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Firebase身份验证:令牌存储在Web的何处?

来自分类Dev

从Google身份验证令牌创建Firebase身份验证

来自分类Dev

使用“ SharedPreferences”存储身份验证令牌

来自分类Dev

Silex:令牌存储中不包含身份验证令牌

来自分类Dev

如何针对Firebase验证身份验证令牌?

来自分类Dev

Firestore规则中的Firebase安装身份验证令牌验证

来自分类常见问题

在iOS上存储身份验证令牌-NSUserDefaults与Keychain?

来自分类Dev

Node Express-身份验证令牌的存储和检索

来自分类Dev

github身份验证令牌在Windows上存储在哪里?

来自分类Dev

Firebase-身份验证自定义令牌错误身份验证/网络请求失败

来自分类Dev

Firebase自定义身份验证传递令牌

来自分类Dev

Firebase身份验证自定义令牌iOS

来自分类Dev

自定义Firebase身份验证:令牌格式错误

来自分类Dev

Firebase JWT身份验证,是否继续发送令牌?

来自分类Dev

错误:身份验证令牌在 Firebase 中已过期

来自分类Dev

使用Google Firebase存储而不进行身份验证

来自分类Dev

Firebase:在Cookie中存储匿名身份验证

来自分类Dev

Firebase:在Cookie中存储匿名身份验证

来自分类Dev

如何验证最终用户身份验证令牌(使用Firebase身份验证)以调用Google Cloud Run端点?

来自分类Dev

条带身份验证存储

来自分类Dev

Python Firebase身份验证

来自分类Dev

Google的Firebase身份验证

来自分类Dev

Firebase匿名身份验证

来自分类Dev

Firebase PHP 身份验证

来自分类Dev

Firebase Facebook 身份验证

来自分类Dev

Firebase 谷歌身份验证

来自分类Dev

Firebase自定义令牌身份验证(Firebase版本3)

来自分类Dev

在事件中使用身份验证令牌

来自分类Dev

简单的令牌式身份验证

Related 相关文章

热门标签

归档