【发布时间】:2022-08-19 00:24:16
【问题描述】:
我的 Angular (v13.3.11) 应用程序在所有主要路由上使用保护来验证用户是否已登录。
当用户注销时,他们被重定向到 OpenID Connect 结束会话端点,然后重定向回我的应用程序的注销页面。
问题是:
退出并重定向到退出页面后,单击浏览器后退按钮允许用户导航回上一页(退出之前的位置)。
身份验证保护的 canActivate 方法以及任何其他 Angular 生命周期方法(ngOnInit、ngOnDestroy 等)都没有被调用。因此,用户能够在页面上执行操作。似乎应用程序处于某种缓存状态。
这只发生在 Angular 生产版本 (v13.3.11) 中,主要是在 Chrome 隐身版中。我可以在其他浏览器中复制这一点,但您必须完美地点击浏览器后退按钮。
谢谢大家,这个问题把我难住了。欣赏任何见解。