0

我正在尝试拦截 ajax jsonp 响应以进行一些响应过滤。我的猜测是,我可以使用自定义转换器来做到这一点。但是转换器功能永远不会运行。我错过了什么?

var ajax_options = {
    dataType: 'jsonp',
    jsonp: 'callback',
    url: url,
    data: parameters,
    success: success,
    converters: {
        "jsonp": function (raw) {
            console.log(raw);
            return raw;
        }
    }
};
$.ajax(ajax_options);

谢谢,麦克法兰

4

2 回答 2

0

docs,转换器是:

数据类型到数据类型转换器的映射。每个转换器的值都是一个返回响应的转换值的函数。

因此,它用于从一种数据类型转换为另一种数据类型。

于 2012-06-01T17:28:29.997 回答
0

我现在听了常识,并决定不滥用可怜的转换器。我创建了一个解决方案,使用 $.proxy() 来拦截每个 JSONP 响应,同时在回调函数中保持正确的上下文。

因为我的解决方案在很大程度上依赖于 jQueryMX,所以我不会在这里粘贴我的源代码。

于 2012-06-04T11:45:12.077 回答