Angular用户登录并丢失会话-如何检查和重定向



当用户登录但会话已过时时会发生什么?

在这种情况下,例如,我丢失了会话中的用户名,因此名称显示为";空";。

所以我需要重定向回登录,对吗?

因此,在我的app-routing.module.ts中,我在末尾有{ path: '**', redirectTo: '' },一切都很完美。除了现在,当我的会话丢失时,我需要重定向到登录。我该如何配置?我在所有必要的页面上都有AuthGuard。

我的理解正确吗?如果相关的话,我打算在稍后阶段添加JWT。

您可以将路由gaurd添加到模块中,该模块可以使用访问令牌进行访问。在路由中,gaurd将添加体验过的条件用户会话,或者如果体验过,则重定向到归属

{ path: 'route', component: Component, canActivate: [AuthGuard] }, 
@Injectable()
export class AuthGuard implements CanActivate {
constructor(private authService: AuthService, private router: Router) {}
canActivate() {
if (/*user is logged in*/) {
return true;
} else {
this.router.navigate(['/Login']);
}
return false;
}
}

最新更新