jQuery如何处理跨域请求错误



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

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事件(成功/错误),没有任何错误。如果API文档中说jQuery不能这样做,那么jQuery为什么要这样做?有时我会得到parseerror,但我总是返回与JSON相同的内容。

有人经历过这种情况吗?

这取决于错误的类型。

当您使用JSONP时,jQuery可能会捕获(并且将捕获)解析错误。(在这种情况下,文件并不准确)

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

相关内容

  • 没有找到相关文章

最新更新