我想了解保存用户信息的方法。
许多老年人建议使用$cookieStore
或Authentication
等。
但是如何使用$rootScope
?
我的想法是,当用户登录时,将他/她的ID和密码保存到$rootScope
。
(命名为$rootScope.user_id = 'stupid';
)
这是危险的吗?
我不知道这个问题是否重复,但我找不到一个人在谈论使用$rootScope
。
更新
我的配置如下所示。
'根控制器'可以看到每个范围,所以即使我刷新页面,
$ rootScope值不会消失。
$stateProvider
.state('root.login',{
url: '/login',
controller: 'LoginCtrl',
templateUrl: 'views/login.html'
})
.state('root.signup',{
url: '/signup',
controller: 'LoginCtrl',
templateUrl: 'views/signup.html'
})
.state('root.main',{
url: '/main',
controller: 'MainCtrl',
templateUrl: 'views/main.html',
})
答案 0 :(得分:1)
在rootScope或Cookie中存储原始用户凭据的非常糟糕的方法。但是,您可以使用userToken或服务器端给出的会话对此进行存档。
userToken
的示例会话示例
因此,如果用户刷新页面或切换页面,您可以调用后端服务器来验证userToken或session。
答案 1 :(得分:-2)
如果您要存储敏感数据,$ rootScope将容易受到攻击,而是使用localstorage来存储使用加密算法和密钥加密的用户凭证,如上所述,创建服务以获取和设置值。