如何在错误回调函数中使用 jquery-jsonp 获取失败的 jsonp 请求的 HTTP 错误代码



我正在使用jaubourg的jquery-jsonp模块从与我的网站不同的域获取数据。我正在使用这个模块,因为 jQuery 的 ajax 函数不支持 JSONP 请求的错误处理。

当我使用此库的 jsonp 函数向不存在的 URL 发出请求时,调用了 error 回调函数,但我看不到如何检索 HTTP 错误代码以查看出了什么问题。

根据文档,error回调函数中唯一可用的数据是定义请求的xOptions对象,以及一个"错误"或"超时"的textStatus字符串。就我而言,这是"错误",但我看不出如何看到发生了哪个错误。

你不能

让我们回想一下 JSONP 的作用。考虑一下:

$.jsonp({
  url: "http://service.org/path?param1=xx&param2=xx",
  callback: "myCbFn",
  error: myErFn
});

这将做的是将类似这样的东西添加到 DOM 中:

<script type="application/javascript"
        src="http://service.org/path?param1=xx&param2=xx&jsonp=myCbFn"
        onerror="myErFn">
</script>

您的错误处理函数将由脚本标记上的 DOM 事件调用。

区分JSONP和AJAX(XML HTTP Request)非常重要。

最新更新