我想为所有AJAX请求添加400,500个异常。以下是我在每个AJAX请求中为beforeload
所做的事情。
Ext.define('Inertia.view.BaseUrl', {
singleton : true,
constructor : function(config) {
this.initConfig(config);
Ext.Ajax.on('beforerequest', this.onBeforeRequest, this);
},
onBeforeRequest : function(connection, options) {
options.headers = {
'token': 'random-token',
'code': 'random-codeABC'
};
}
});
现在我想为所有请求添加一个异常,如果请求以某种方式没有加载我想要捕获异常。我该怎么做 我试试这个,但它不起作用
Ext.define('Inertia.view.BaseUrl', {
singleton : true,
constructor : function(config) {
this.initConfig(config);
Ext.Ajax.on('beforerequest', this.onBeforeRequest, this);
Ext.Ajax.on('exception', this.exception, this);
},
onBeforeRequest : function(connection, options) {
options.headers = {
'token': 'random-token',
'code': 'random-codeABC'
};
},
exception: function (){
alert('An Exception occured...!');
}
});
答案 0 :(得分:1)
您可以像下面这样使用它: -
/**
* @ajaxrequest error handling
*/
Ext.Ajax.on('requestexception', function (conn, response, options, eOpts) {
try {
alert(response.status);
} catch (error) {
console.log(error);
}
});
或者像这样: -
requestexception: function (conn, response, options, eOpts) {
try {
alert(response.status);
} catch (error) {
console.log(error);
}
}