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

五里远3

五里远3

2016-02-19 11:01

今天图老师小编给大家介绍下ajax session过期问题的几个解决方案,平时喜欢ajax session过期问题的几个解决方案的朋友赶紧收藏起来吧!记得点赞哦~
如处理不当会影响用户体验,也有可能产生莫名的问题。
结合自己的思考和网上相关内容的参考,给出如下解决方案。每个方案都有不同的优缺点,欢迎
大家指正。
方案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保持长连接)
展开更多 50%)
分享

猜你喜欢

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

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

关于session的问题集锦解决方案

Web开发
关于session的问题集锦解决方案

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

ajax后退解决方案

Web开发
ajax后退解决方案

ajax中文乱码问题解决方案

Web开发
ajax中文乱码问题解决方案

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Ajax缓存和编码问题的最终解决方案

Web开发
Ajax缓存和编码问题的最终解决方案

ajax中文乱码解决方案

Web开发
ajax中文乱码解决方案

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

基于AJAX的分页类实现代码

基于AJAX的分页类实现代码

JAVA应用系统工具快捷托盘实例代码

JAVA应用系统工具快捷托盘实例代码
下拉加载更多内容 ↓