我对angular并不陌生,但是已经为我分配了一个项目,因此我已经开始工作,但是我面临与状态管理相关的情况,因此在通过wcf Restful服务进行身份验证之后,便向用户提供了令牌。所以我可以用这三种方法来解决这个问题。
本地存储
上述方法的问题是-
如果我使用会话状态,它将对浏览器中的新标签页无效,因此我无法检查令牌是否存在
如果我使用的是本地存储,则当用户关闭浏览器并离开系统后再打开其他浏览器时,它将不起作用。安全威胁。
如果我使用 cookies ,直到现在我一直工作良好,直到遇到一个奇怪的问题,我的子组件已通过 authguard 使用进行了身份验证> canActivateChild 功能。 但是当我在新标签页中粘贴了网址(以及子组件路径)时,两个页签在两个标签页中都相同,并且当我单击注销按钮时从第二个标签中删除了Cookie。
注意:每次我单击“注销”按钮时都会调用该功能,但该功能在第二个选项卡中不起作用,并且从第一个选项卡起可以正常工作。
答案 0 :(得分:1)
最好的方法是Ngrx,如果您使用的是Angular,以前是Redux。现在我们有了Ngrx,您还可以使用Ngrx设备工具作为chrome扩展程序,以查看应用程序加载时的状态和操作。.很棒。