在javascript中,如何在会话超时结束之前警告用户?

在javascript中,如何在会话超时结束之前警告用户?,javascript,session,Javascript,Session,我遇到了一个小问题,我的web.xml中有一个会话超时15分钟。但是,在javascript中,我试图在15分钟前警告用户5分钟,但是当它警告用户并且用户单击OK时,web应用程序将不再工作。我只想提醒用户会话超时,然后当他们按ok时,他们仍然可以使用web应用程序。然而,当会话超时时,我希望他们单击OK并将他们带到另一个网页。谢谢你的帮助 第一件事:当您想在15分钟超时前5分钟警告用户时,应在页面加载后10分钟显示警告 setTimeout( function() { alert("Your

我遇到了一个小问题,我的
web.xml
中有一个会话超时15分钟。但是,在javascript中,我试图在15分钟前警告用户5分钟,但是当它警告用户并且用户单击OK时,web应用程序将不再工作。我只想提醒用户会话超时,然后当他们按ok时,他们仍然可以使用web应用程序。然而,当会话超时时,我希望他们单击OK并将他们带到另一个网页。谢谢你的帮助

第一件事:当您想在15分钟超时前5分钟警告用户时,应在页面加载后10分钟显示警告

setTimeout( function() { alert("Your session will expire in 5 minutes."); }, 10*60*1000);
如果您想在15分钟后将用户重定向到其他页面,实际上不需要用户确认

setTimeout(function() {
    window.location = "timeout.xhtml";
}, 15*60*1000); 
那么,超时实际上是什么时候发生的呢?
使用多个选项卡,用户只需在两个选项卡中使用应用程序。第二个选项卡中的操作将阻止应用程序超时。一种方法是重新加载页面,让服务器处理超时和重定向部分。另一个选项(首选)是定期检查会话是否仍然存在。请注意:会话检查不应延长超时时间。

这是一个需要解决的重要问题。我要做的是将每个HTTP响应指令发送回客户端,以重新启动会话计时器。计时器的运行方式应确保其每秒唤醒一次并检查时间;你必须处理浏览器使计时器变慢的问题。具体设置方式取决于应用程序的性质。请记住,打开网站的多个选项卡/窗口,会设置多个具有不同过期时间的计时器。确定。这意味着,我不需要else语句,我只需使用
setTimeout
?鉴于会话已过期,并且您希望显示超时,保留当前页面没有任何意义。因此,没有必要使用
其他
。无论如何,如果答案满足您的问题,请接受它。