4

我有点坚持使用 ajax/http 异常处理:我正在尝试401在 extjs 中全局处理异常,并尝试使用以下代码来执行此操作:

Ext.Ajax.on('requestexception', function (conn, response, options) {
    if (response.status === 401) {
        log.console = '401 recieved';
    }
});  

它可以正常工作并且可以处理401,但仅当您明确地制作Ext.Ajax.request(). 它不处理 ajax 存储...所以问题来了:我可以处理401 http应用程序中出现的所有错误吗?谢谢!

4

1 回答 1

2

您将需要对您使用的任何进行 Ajax 连接的 Ext 类进行错误处理。其中一些可能包括Ext.data.ConnectionExt.data.proxy.AjaxExt.form.action.Action

例如,使用Ext.data.proxy.Ajax,您可以覆盖该类以在 上添加侦听器requestexception

Ext.define('MyApp.override.AjaxProxy', {
    override: 'Ext.data.proxy.Ajax',
    constructor: function(config) {
        this.callParent(config);
        this.on('requestexception', MyApp.utils.Utils.handle401Error);
    }
})
于 2013-06-28T15:00:35.737 回答