微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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();
    });
});

原文地址:https://www.jb51.cc/jquery/179445.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐