显示会话已过期的消息提醒

时间:2013-08-29 11:11:25

标签: javascript session-timeout

如何在session.timeout发生时显示警告消息? 5分钟后,我想让我的页面过期并重定向到登录页面。重定向后我想向用户显示他们的会话已经过期。

3 个答案:

答案 0 :(得分:0)

if (session["MySessionName"] == null)
{
 .. show message
}

答案 1 :(得分:0)

我想你是在5分钟不活动之后。

function doLogout() {
    window.location.href="/logout?reason=timeout"
}

window.setTimeout(doLogout(), 300000)

设置所需的超时,然后注销,将某种形式的参数传递给注销机制,以便显示消息。

另一种选择是轮询session-cookie。方法类似,但不是直接注销,而是检查cookie是否仍处于活动状态以及是否启动了新的计时器。要使其工作,您必须将会话的到期时间设置为希望的值。

作为旁注,出于可访问性原因,您应该在终止会话之前警告用户并提供续订会话的方法。

答案 2 :(得分:0)

您需要在几秒钟内ping服务器以进行会话到期。

ALGO:

  1. 对服务器的右同步调用
  2. 使用true / false
  3. 接收回复
  4. 相应地显示提醒。

    $return = array("status"=>1);
    if($_SESSION['ANY_SESSION_VAR']){
        $return = array("status"=>0);
    }
    
    die(json_encode($return);
    

    http://jsfiddle.net/2CgkV/1/