Angular-永久用户信息的存储位置,本地存储除外

问题描述 投票:0回答:2

一个通过JWT进行身份验证的系统,在本地存储上,JWT设置在一个变量上,而用户角色在本地存储上的另一个变量上。但是,所有信息(包括JWT)都是通过CryptoJS加密的,然后在侧边栏上,例如,我们有ngIfs仅用于显示具有某些角色的用户的某些菜单。所有这些ngIfs调用一种方法,该方法对本地存储上的数据进行解密以获取用户角色,然后执行验证。问题在于,多个图标/边栏图标/等中的所有这些解密操作都开始使系统真正变慢。那么,在这种情况下,有人对在哪里保存用户数据有想法吗? :)

angular security jwt
2个回答
0
投票

您可以使用:

[Service:可以从任何组件访问的共享服务(在您的根模块中声明),请确保首先解密信息并将其存储在服务内部的变量中。]

Store

:类似Redux的东西,您可以在其中存储解密的用户信息,并从任何地方访问它。

0
投票

我使用的一般规则是,在*ngIf之类的东西上使用函数,在每个摘要周期对其进行处理。这就是为什么您的表现受到打击的原因。尝试将console.log()放在解密函数中,看看每秒被调用多少次。

© www.soinside.com 2019 - 2024. All rights reserved.