ajax session过期问题的几个解决方案

2016-02-19 11:01 56 1 收藏

今天图老师小编给大家介绍下ajax session过期问题的几个解决方案,平时喜欢ajax session过期问题的几个解决方案的朋友赶紧收藏起来吧!记得点赞哦~

【 tulaoshi.com - Web开发 】

如处理不当会影响用户体验,也有可能产生莫名的问题。
结合自己的思考和网上相关内容的参考,给出如下解决方案。每个方案都有不同的优缺点,欢迎
大家指正。
方案1:检查AJAX返回的返回的内容是否有html标签
在web系统中,当session过期时,当用户有操作的时候,此时系统一般会返回登陆界面。
让用户重新输入用户名和密码。当session过期的时候,AJAX请求返回的内容应该是登陆界面的页面
内容(即登陆界面的页面的html代码)。通过判断返回内容是否用html来判断session是否过期。
var result=request.responseText;/* ajax返回的内容*/
if(result.indexOf('HTML')-1){/*返回内容中有html标签*/}
或者
var r=/html/ig;
if(r.test(result)){/*返回内容中有html标签*/}
通过上面的方法可以判断session是否过期,然后根据具体的业务进行异常处理。
方案2:返回的结果中有session是否过期的标志。也有人称为true/false模式
此解决方案一般结合json使用。
如返回的结果是:
var res={
"result":true,/*session没有过期,false(session过期)*/
"data" :""/*其它数据*/
}
if(res["result"])
{
/*session没有过期*/
}else{
/*session过期*/
}
方案3:利用时间戳
在页面上搞个全局变量
var startDate; /*ajax最近一次访问服务器的时间,Date类型*/
if(new Date().getTime()-startDate.getTime()30*60*1000)
{
/*假设session过期的时间30分钟*/
/*session没有过期*/
}else{
/*session过期*/
}
哈哈!Do not trust the client
方案4:延长session过期时间
此方案有性能问题
4.1:延长session过期时间
4.2:client轮循server。(AJAX轮循server或client,server保持长连接)

来源:https://www.tulaoshi.com/n/20160219/1596357.html

延伸阅读
标签: Web开发
PHP中路径问题的解决方案引言: 关于PERL与PHP中的包含路径一直是一个比较难解的问题,主要是与操作系统和WEB服务器有关,不可能非常智能化的解决这个路径问题。相对于PERL,PHP的路径好得多,解决起来也容易得多,因为PHP的相对路径在PHP程序中的任何场合都可以使用,而不象PERL在某些语句中必须用绝对路径而导致移植的极其复杂。 基于此...
标签: Java JAVA基础
  这两天在win98下装apache1.3.9加jserv和gnujsp1.0,jdk1.2.2,jsdk2.0   发现中文无法正常显示。要么乱码,要么出错。   经网友提醒,总结了以下几条方法。   1:修改区域设置:在控制面版中选择区域设置,设为英语(美国)?nbsp;     然后重起。一切就都正常。   2:在j...
标签: Web开发
很多报考时候或填写志愿时候,你是否遇到多斟酌一段时间后填写完页面信息,提交时却显示页面过期的现象,不得不重新快速填写一遍;然而在写博客时要写好长时间但没有出现这种情况并且有实时的自动保存;这就涉及到了session的过期时间问题; 当无法预计用户操作页面的时间时就用到了session永不过期 代码如下: script src="js/Jquery1.7.j...
1、日间护理:白天,唇部和脸部肌肤一样,承受污染、干燥、日晒的压力,所以,唇部一样需要滋润、隔离以及防晒,以对抗外来压力的“迫害”!所以唇部护理产品得选择以质感轻薄、不粘腻并带有一定防晒指数为佳~ 2、晚间护理:夜间休息,身心放松,是唇部进行修复和加倍滋润的好时机,相较于日间,晚间润唇产品需要加倍补水保湿,需要有修护...
标签: Web开发
一类是出现乱码,另外一类是出现javascript系统错误:-1072896658的。提示在XX.innerHTML=xmlhttp.responseText;这行。 其实都是因为编码不统一引起的。解决方法就是加入指定字符编码指令。 一、什么是字符编码 定义见:http://zh.wikipedia.org/wiki/%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81。 通俗的讲:你看到的“我”是一张小图片,每个汉...

经验教程

998

收藏

66
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部