我如何拦截 ExtJs 中的 Ajax 响应?

How can I intercept Ajax responses in ExtJs?

我正在使用 开发一个项目,我需要在所有 ajax 响应被各自的调用者代码处理之前拦截它们。

为例,我可以做:

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

});

我如何在 extjs 中做到这一点? Ext.Ajax 的文档似乎只提供 events 请求。


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

无脑问题。

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

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


所以,听requestcomplete才是正道。

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

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

});

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

});