|
|
重写EXTJSExt.data.Connection的handleResponse方法:代码如下。
Ext.override(Ext.data.Connection, {
handleResponse : function(response) {
if(response.getResponseHeader('sessionstatus')){ //定义标识
window.location.href='login.jsp'; //跳转页面
}else{
this.transId = false;
var options = response.argument.options;
response.argument = options ? options.argument : null;
this.fireEvent("requestcomplete", this, response, options);
Ext.callback(options.success, options.scope, [response, options]);
Ext.callback(options.callback, options.scope, [options, true, response]);
}
}
后台处理;
if (request.getHeader("x-requested-with") != null
&& request.getHeader("x-requested-with").equalsIgnoreCase(
"XMLHttpRequest") ) {
//ajax超时处理
response.addHeader("sessionstatus", "timeout");
} else {
//http超时处理
response.addHeader("sessionstatus", "timeout");
} |
|