1

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

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

根据文档error,回调函数中唯一可用的数据是xOptions定义请求的对象,以及一个textStatus“错误”或“超时”的字符串。在我的情况下,它是“错误”,但我看不出我怎么能看到发生了哪个错误。

4

1 回答 1

1

你不能

让我们回顾一下 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>

您的错误处理函数将由 script 标签上的 DOM 事件调用。

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

于 2014-02-19T15:17:14.180 回答