如何拦截ExtJs中的Ajax响应?

时间:2018-03-15 09:10:15

标签: javascript ajax extjs interceptor extjs5

我正在处理一个的项目,我需要拦截所有ajax个响应,然后再按相应的来电代码处理。

例如,在中,我可以这样做:

axios.interceptors.response.use(
    function (response) {
        // handle response
        return response;
    }, function (error) {

});

我如何在extjs中执行此操作? Ext.Ajax的文档似乎仅为请求提供events

我不想安装任何额外的插件/依赖

1 个答案:

答案 0 :(得分:1)

无脑问题。

我链接的文档显示了事件requestcomplete,当response从服务器返回时会触发该事件。

我错误地认为它是在发送请求后立即被解雇的。始终仔细阅读文档

所以,听requestcomplete是正确的方法。

您可以使用以下代码捕获成功和不成功的响应:

Ext.Ajax.on('requestcomplete', function ( conn, response, options ) {

});

Ext.Ajax.on('requestexception', function ( conn, response, options ) {

});