jquery – 如何在论坛上发布用户的会话?

我有一个网站,会话超时为15分钟.在某些页面上,用户偶尔花费超过15分钟填写回复.在这种情况下,保持活动的最佳解决方案是什么?

我已经在这些页面上使用了JQuery,所以可能要ping一个服务器,但是什么事件?

后端是Tomcat上的Struts.

鉴于您不想更改网站的会话超时

在javascript中设置超时/间隔(<15分钟)事件,并决定事件触发时该做什么.只要您希望该会话处于活动状态,只要该页面处于打开状态,则可以继续ping每个< 15分钟但这可能不是您想要的,因为离开公用计算机的用户应该在某些时候注销. 您可以维护一个变量lastActivity,它会在每个文档mousemove或文档keydown上进行更新.如果自上次ping以来有任何活动,请再ping一次. 要获得更复杂的数据,您可以对事件进行计数,并且仅在事件数量>超时阈值

基本例子:

setInterval(function(){
   $.get('/ImStillAlive.action');
}, 840000); // 14 mins * 60 * 1000

对基本的打字活动进行检查:

$(function(){
    var lastUpdate = 0;
    var checkInterval = setInterval(function(){
       if(new Date().getTime() - lastUpdate > 840000){
           clearInterval(checkInterval);
       }else{   
            $.get('/ImStillAlive.action');
       }
    }, 840000); // 14 mins * 60 * 1000

    $(document).keydown(function(){
         lastUpdate = new Date().getTime();
    });
});
相关文章
相关标签/搜索