首页 文章

如何在Angular 2 / Java Spring Boot中处理会话超时

提问于
浏览
0

我们有一个带有java spring boot后端的angular 2应用程序 . 在spring后端,我们在YAML配置文件中设置了1小时的会话超时(出于测试目的,我将其更改为1分钟) . 会话超时后,令牌不再经过身份验证,用户需要再次登录才能恢复/启动应用程序 .

会话超时后,角度应用程序应将用户重定向到登录页面 . 无论用户活动/空闲状态如何,都应该这样做 .

我坚持的是如何在会话超时后将角度2应用程序中的用户重定向到登录页面 . 我想知道在哪里以及如何实现这个?在服务类?在用户服务类中(我有一个用户服务类,它从spring后端检索登录的用户信息) . 应用程序中的每个组件都需要检查会话状态吗?

想知道角度2的最佳实践 .

谢谢!

1 回答

  • 2

    用户登录后,您可以启动一小时计时器(可以使用Observable.timer),并在计时器完成时导航到login / logout(使用router.navigate) .

    或者您可以创建自定义Http服务并将其用于所有后端调用 . 在自定义服务中,从后端收到错误后导航到注销/登录 . 参考https://stackoverflow.com/a/44929725/7710727

相关问题