不断刷新页面的session超时控制

标签: 页面 session 控制 | 发表时间:2014-08-03 18:53 | 作者:Supanccy2013
出处:http://www.iteye.com
注:原创作品,转载请注明出处


解决方案:
1,在页面元素加载之前,定义js计时器,并赋值为0;
2,在页面元素加载之前,绑定body的鼠标单击事件处理函数--每次鼠标单击body都重新赋值计时
   器为0;
3,在html中body中定义一个隐藏域,值为服务器上session的最大时间。
4,在页面元素加载完毕后,启动session超时监听器:该监听器实现的功能是:
   获取页面上隐藏域的session的最大超时时间,
   比较计数器和session最大值,如果计时器的数值小于session的最大时间则,计数器+1,重新
   调用session监听器,  如果计数器的数值大于等于session的的最大时间,则调用dwr或ajax
   让后台的session失效


实例:
<html>
  <head>
	<script type="text/javascript">
	   //定义计时器
	   var monitorCount = 0;
	   
	   //绑定body的onclick处理函数
	   document.body.onclick = function()
	   {
		   if(typeof bodyOnClickFunction == 'function')
		   {
			   bodyOnClickFunction();
		   }
	   }
	   
	   //body的单击处理函数
	   function bodyOnClickFunction()
	   {
		   resetTimeoutCount();
	   }
	   
	   //重置计数器为0
	   function resetTimeoutCount()
	   {
		   monitorCount = 0
	   }
	   
	   var timeOutFunction = "sessionTimeOutMonitor()";
	   
	   function sessionTimeOutMonitor()
	   {
		   var sessionTimeCount = document.getElementById("sessionTimeCount").value / 60;
		   
		   if(monitorCount < sessionTimeCount)
		   {
			   monitorCount++;
			   setTimeOut(sessionTimeOutMonitor,60 * 1000);
		   }
		   else
		   {
			   //调用ajax或者dwr调用使后台的session失效
		   }   
	   }
	</script>
  </head>
  <body onload="sessionTimeOutMonitor();">
     <input type="hidden" value="从服务器上获取session的最大超时数值" id="sessionTimeCount"/>
  </body>
</html>


已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [页面 session 控制] 推荐:

不断刷新页面的session超时控制

- - Web前端 - ITeye博客
注:原创作品,转载请注明出处. 1,在页面元素加载之前,定义js计时器,并赋值为0;. 2,在页面元素加载之前,绑定body的鼠标单击事件处理函数--每次鼠标单击body都重新赋值计时. 3,在html中body中定义一个隐藏域,值为服务器上session的最大时间. 4,在页面元素加载完毕后,启动session超时监听器:该监听器实现的功能是:.

session fixation攻击

- - 互联网 - ITeye博客
什么是session fixation攻击. Session fixation有人翻译成“Session完成攻击”,实际上fixation是确知和确定的意思,在此是指Web服务的会话ID是确知不变的,攻击者为受害着确定一个会话ID从而达到攻击的目的. 在维基百科中专门有个词条 http://en.wikipedia.org/wiki/Session_fixation,在此引述其攻击情景,防范策略参考原文.

Zookeeper的Session

- - 行业应用 - ITeye博客
介绍一下基于zookeeper的一些API的编程. 在此之前,我们先来熟悉一下相关知识:. Zookeeper的Session:. (1)客户端和server间采用长连接. (2)连接建立后,server产生session ID(64位)返还给客户端. (3)客户端定期发送ping包来检查和保持和server的连接.

Session机制解析

- - ITeye博客
虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术. 本文将详细讨论session的工作机制并且对在Java web application中应用session机制时常见的问题作出解答. 二、HTTP协议与状态保持.

session和cookie详解

- - ITeye博客
摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一 技术. 本文将详细讨论session的工作机制并且对在Java web application中应用session机制时常见的问题作出解答. 二、HTTP协议与状态保持.

nginx + memcached session 同步

- - 企业架构 - ITeye博客
squid 缓存疑问 问题归纳:. 1 squid 缓存的数据,何时过期,如何判断缓存的数据已经过期,如何把最新的数据缓入squid 并且替换掉旧的内容. 2 如何判断数据是否应该被缓存. 3 校验失败时,是否给出缓存中旧的内容. 上面的几个问题  都可以通过 squid中的 refresh_pattern 配置项 找到答案.

session深入解读

- - CSDN博客推荐文章
林炳文Evankaka原创作品. 转载请注明出处 http://blog.csdn.net/evankaka. 摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术. 本文将详细讨论session的工作机制并且对在Java web application中应用session机制时常见的问题作出解答.

JavaOne美国之行–Session篇

- LightingMan - 淘宝JAVA中间件团队博客
Session的总结是重头戏,在这篇blog中,来分享下我参与过的Session,以及听完后我对Session的评价和对于有收获的Session制定的一些Action Plan. 本届JavaOne我总共参加了24个Session,主要集中在JVM方面以及Experience Talk方面,5分为最高分的话,我给这些Session的评分状况如下所示:.

PHP Session学习笔记

- 张大糊涂 - 标点符
在web开发中,session是个非常重要的概念. Session一般译作会话,Session是一种基于HTTP协议的用以增强web应用能力的机制或者说一种方案,它不是单指某种特定的动态页面技术,而这种能力就是保持状态,也可以称作保持会话. 在许多动态网站的开发者看来,session就是一个变量,而且其表现像个黑洞,他只需要将东西在合适的时机放进这个洞里,等需要的时候再把东西取出来.

session工作机制解析

- - 企业架构 - ITeye博客
摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术. 本文将详细讨论session的工作机制并且对在Java web application中应用session机制时常见的问题作出解答. 二、HTTP协议与状态保持.