4

私は ajax/http 例外処理に少し行き詰まっています: 401extjs で例外をグローバルに処理しようとしており、次のコードを使用してこれを実行しようとしています:

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

それは問題なく動作し、処理401しますが、明示的に make した場合のみですExt.Ajax.request()。それは ajax ストアを処理しません...ここで質問があります:401 httpアプリケーションに発生したすべてのエラーを処理できますか? ありがとう!

4

1 に答える 1

2

Ajax 接続を行う Ext クラスを使用する場合は、エラー処理を行う必要があります。これらの一部には、、、およびが含まれる場合がExt.data.ConnectionありExt.data.proxy.AjaxますExt.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 に答える