jQuery如何处理跨域请求错误?

时间:2013-08-08 19:58:41

标签: jquery ajax cross-domain

考虑到我之前没有定义回调方法和以下代码:

jQuery.ajax({
            url: 'url',
            type: 'GET',
            data: {},
            dataType: 'jsonp',
            crossDomain: true,
            jsonpCallback: callback,
            async: true,
            success: function ( pData ) {
                //process success
            },
            error: function (jqXHR, textStatus, errorThrown) {
                //Log error
            }
});

jQuery正确处理ajax事件(成功/错误),没有错误。 为什么jQuery正在这样做,如果在API文档中说他们不能这样做? 有时我会得到parserror,但我总是返回与JSON相同的内容。

有没有人经历过这个?

1 个答案:

答案 0 :(得分:1)

这取决于错误的类型。

当您使用JSONP时,jQuery可能会捕获(并将被捕获)。(在这种情况下,文档并不精确)

但是可能无法捕获网络错误,因为JSONP不使用XMLHttpRequest,因此不会收到任何可能表示错误的状态代码。