我有一个在AngularJS/Javascript上开发的Web应用程序,后端是Java/Spring。我有一个与我的Web应用程序的会话管理相关的问题。如何在会话结束时将Web应用程序流重定向到特定页面?
我已经使用web.xml会话超时参数会话配置如下图所示设置会话超时,
<session-config>
<session-timeout>1</session-timeout>
</session-config>
现在1分钟后,会话超时。我有一个场景,在会话超时后需要将我的Web应用程序流重定向到登录页面。场景1:如果我点击任何需要加载新页面的链接/按钮,它会自动检测到会话超时,并将应用程序重定向到登录页面。这工作很好。
情况2:但如果页面包含我选择的任何下拉列表,则应用程序不会重定向到登录页面。 这是问题。
通常会发生什么情况:当我从下拉列表中选择任何值时,它会对后端进行其余的调用,并获取填充页面上的值所需的数据。现在,如果会话在一分钟后结束,并且如果选择下拉菜单,则会话结束时不会拨打任何后端电话。
现在,在这种情况下应该做些什么来确保即使当我选择下拉菜单并且会话结束时,它也会以某种方式检测到它并将应用程序重定向到登录页面。有没有一种方法使用角JS或JavaScript来检查会话是否仍然活着,当我选择下拉值,并可以根据需要重定向流量?
考虑到当我选择下拉式流程不会进入后端时,我想我可能需要仅在客户端(前端)而不是后端处理此重定向。不知道如何做到这一点。
任何帮助,将不胜感激。
您是否在来自用户界面的任何请求时进行了身份验证?如果你这样做了,那么你需要检查会话的时间是否有效。 –
嗨Ramesh,身份验证是使用Spring安全性完成的。但是,这只会发生一次,我猜测Web应用服务器何时启动或启动。我不知道在登录之后我是否可以在应用程序中稍后使用该配置。 – WebNoob