• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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保持长连接)
    您可能感兴趣的文章:
    • jQuery ajax全局函数处理session过期后的ajax跳转问题
    • ajax实现session不过期(避免页面过期的现象)
    • 浅析ajax请求json数据并用js解析(示例分析)
    • 跨域请求之jQuery的ajax jsonp的使用解惑
    • 原生 JS Ajax,GET和POST 请求实例代码
    • js每隔5分钟执行一次ajax请求的实现方法
    • JS实现定时任务每隔N秒请求后台setInterval定时和ajax请求问题
    • 详解JavaScript for循环中发送AJAX请求问题
    • 分享JavaScript监听全部Ajax请求事件的方法
    • 浅谈js的ajax的异步和同步请求的问题
    • JS Ajax请求会话过期处理问题解决方法分析
    上一篇:asp.net 全部选中与取消操作,选中后的删除(ajax)实现无刷新效果
    下一篇:四步学会 Ajax
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

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