javascript – 如何在Angular中存储用户会话?

前端之家收集整理的这篇文章主要介绍了javascript – 如何在Angular中存储用户会话?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚开始使用AngularJS,我试图在AngularApp上存储用户会话.

提交用户名和密码工作的第一步.
之后,我将该服务中检索的用户名存储在$rootScope中.
下一页显示用户名.

但是刷新后,$rootScope为空.

我试图做一个尽可能简单的认证系统.

myApp.controller('loginController',['$scope','$rootScope','$location','AuthService','$route',function ($scope,$rootScope,$location,AuthService,$route) {

      $scope.login = function (credentials) {
        AuthService.login(credentials).then(function (response) {
          if(response.data == "0"){
            alert("Identifiant ou mot de passe incorrect");
          }
          else {
            // response.data is the JSON below 
            $rootScope.credentials = response.data;           
            $location.path("/");
          }
        });
      };

}]);

AuthService.login()生成$http请求.

JSON

{user_id: 1,user_name: "u1",user_display_name: "Steffi"}

HTML:

<div>Welcome {{ credentials.user_display_name }}!</div>

我尝试了很多教程,但是我无法使会议工作.
我已经使用过UserApp,但对我来说并不好.我想创建我自己的简单身份验证.

解决方法

页面刷新时,$rootScope将始终重置,因为它是单页应用程序.

您需要使用持久客户端的东西,例如cookie或sessionStorage(因为它们都有到期时间).看看$cookieStore:https://docs.angularjs.org/api/ngCookies/service/$cookieStore的文档

记住,敏感会话信息应该被加密.

原文链接:https://www.f2er.com/js/153909.html

猜你在找的JavaScript相关文章