我们有一个带有java spring boot后端的angular 2应用程序。在spring后端,我们在YAML配置文件中设置了1小时的会话超时(出于测试目的,我将其更改为1分钟)。一旦会话超时,令牌就不再进行身份验证,用户需要重新登录才能恢复/启动应用程序。
一旦会话超时,angular应用程序应该将用户重定向到登录页面。无论用户活动/空闲状态如何,它都应该这样做。
我遇到的问题是,一旦会话超时,如何将angular 2应用程序中的用户重定向到登录页面。我想知道在哪里以及如何实现它?在服务级吗?在一个用户服务类中(我有一个从spring后端检索登录用户信息的用户服务类)。应用程序中的每个组件都需要检查会话状态吗?
想知道angular 2的最佳实践。
谢谢!
发布于 2017-07-13 12:15:27
用户登录后,您可以启动一个小时的计时器(可以使用Observable.timer),并在计时器完成时导航到登录/注销(使用router.navigate)。
或者,您可以创建自定义Http服务,并将其用于所有后端调用。在自定义服务中,后端收到错误后导航到注销/登录。参考https://stackoverflow.com/a/44929725/7710727
https://stackoverflow.com/questions/45060522
复制相似问题