gpt4 book ai didi

java - 我可以在没有任何java请求的情况下重定向页面吗?

转载 作者:行者123 更新时间:2023-12-01 13:24:22 24 4
gpt4 key购买 nike

如果 session 在我的网络应用程序的 web.xml 文件中提到的特定时间到期,如果不单击任何链接,我的应用程序需要重定向到登录页面。我尝试使用实现 HttpSessionListener 的 Listener 类,但我无法重定向到新页面,因为在正常监听器中没有响应对象(response.sendRedirect(“login.jsp”))。

谢谢,贾帕纳

最佳答案

你不能这样做。至少不像你想象的那么容易。

如果 session 过期,则表示在 session 超时时间内客户端浏览器没有发出任何请求。服务器甚至不知道,用户是否关闭了浏览器窗口或要去厕所等。

HttpSessionListener 是仅服务器端事件,没有客户端请求。表示过去 30 分钟内没有客户端请求该 session (如果 session 超时为 30 分钟)。

因此,您无法将浏览器窗口重定向到另一个站点。

作为替代方案,您可以经常从客户端的浏览器进行轮询。但这意味着,只有当用户导航到另一端或关闭浏览器时,服务器端 session 才会过期。为了避免这种情况,您可以实现自己的 session 超时。在每个轮询请求中,您可以确定最后一个“真实”请求的时间(意味着没有轮询请求),然后重定向到登录页面并手动关闭 session 。

另一种选择是使用 websockets 作为向后 channel 。

关于java - 我可以在没有任何java请求的情况下重定向页面吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21851903/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com