问题描述
我在Angular 8应用中实现了Okta身份验证。当我点击注销按钮时,会话终止,并且退出了Okta应用程序,但是由于我在okta中配置的注销URL是用于localhost:4200/dashboard
的,因此它将我重定向到dashboard
组件。发布成功注销后,我想将用户导航到localhost:4200/login
。我有两个问题,我尝试过
async logout(){
await this.oauthService.logout();
this.router.navigate(['/login']);
}
// but this does not redirect user to login.
而且,我尝试让Okta支持该退出按钮位于导航栏中,并且可以从不同的URL进行点击,而不必localhost:4200/dashboard
,因为导航栏位于应用程序的每个页面上。他们提到只能从单个URL路径进行配置。如何从不同的组件以及不同的URL路径实现注销。
解决方法
您只需要注册一个Post Logout Redirect URI,然后就可以从应用程序中的任何位置触发注销。
我会这样实现:
- 提供登出后登陆页面
- 在该页面上提供重新登录选项
我的一些资源可能会给您一些想法: