博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
session过期ajax的处理不跳出
阅读量:6081 次
发布时间:2019-06-20

本文共 809 字,大约阅读时间需要 2 分钟。

hot3.png

环境是spring mvc  

session过期后,点按钮没反应,用火狐看到的请求如下:142056_bvlv_2340612.png

通过http://www.cnblogs.com/dudu/p/ajax_302_found.html

了解

在ajax 后面加上 错误判断即可,

  error: function (xhr) {

                        if(xhr.status=="200");
                        location.href="/logout.cqzk";
                }

为避免写重复代码

可以用 ajaxSetup: 经测试,ajaxSetup里面的方法会覆盖具体ajax请求的对应方法。

$.ajaxSetup({

          error: function (xhr) {
            if(xhr.status=="200");
            location.href="/logout.cqzk";
        }
    });

另外,找解决方法的时候还了解到ajax全局方法

全局方法和具体ajax不会覆盖的。有一个执行顺序 

jquery中各个事件执行顺序如下:
    
ajaxStart(全局事件)
    
beforeSend
    
ajaxSend(全局事件) 
    
success
    
ajaxSuccess(全局事件)
    
error
    
ajaxError (全局事件)
    
complete
    
ajaxComplete(全局事件)
    
ajaxStop(全局事件)

另外如果global选项设置为false,调用方法将不会被触发。

参考:    http://www.css88.com/jqapi-1.9/jQuery.ajax/

用这个办法可以基本解决。

另外可以通过设置拦截ajax请求,判断session是否过期设置响应。在ajax的响应中得到。一样要写ajaxSetup

参考:http://my.oschina.net/houke/blog/213584?p=1

转载于:https://my.oschina.net/u/2340612/blog/414790

你可能感兴趣的文章
Android MediaPlayer接口及状态迁移
查看>>
JQuery------prevAll(),nextAll(),attr()方法的使用
查看>>
Disciz!NT开源资源汇总
查看>>
Python网络编程笔记
查看>>
Vim自动补全神器–YouCompleteMe
查看>>
Mysql 小工具
查看>>
个人andriod实习小作品,个人联网笔记本
查看>>
Codeforces Round #313 (Div. 2) 解题报告
查看>>
go7---map
查看>>
CentOS5.4安装redmine详细步骤
查看>>
runloop的source
查看>>
eclipse A Java Runtime Environment(JRE)
查看>>
Sqlserver建立Oracle的鏈接服務器
查看>>
根据IP获取所在的国家城市
查看>>
python Selenium+phantomjs 小技巧
查看>>
linux每日命令(1):ls命令
查看>>
ArrayBlockingQueue源码解析(2)
查看>>
哈希表
查看>>
成为跨平台的C++程序员 - C++ - language - ITeye论坛
查看>>
让CKEDITOR支持JSP上传
查看>>