jQuery:捕获jsonp 400 Bad Request?

时间:2011-06-18 11:55:06

标签: jquery http-status-code-400

如何在jsonp请求中捕获400头和进程错误回调?

或者这是一个错误?

以下是一个例子:

http://jsfiddle.net/pLuPb/

既没有错误,也没有完成触发?如何捕捉错误?

我被诅咒了?上周我遇到了这样的问题......:D

猜猜我必须将这个报告给jQuery跟踪器。

谢谢;)

2 个答案:

答案 0 :(得分:5)

jsopn不是常规的ajax请求,它实际上在你的DOM中创建了一个脚本标记,这就是jsonp响应数据格式为 abc_FunctionName(data)的原因,你可以直接将数据直接输入到该函数中。但jQuery会自动为您执行此操作,因此您永远不会遇到这一部分。

要处理jsonp错误,请使用此插件http://code.google.com/p/jquery-jsonp/

答案 1 :(得分:2)

JSONP与常规AJAX请求不同,它使用脚本标记来获取内容。话虽这么说,jQuery应该能够捕获像400这样的错误,而奇怪的是它不是。

您可能希望在ajax配置对象中添加超时:http://jsfiddle.net/pLuPb/18/

您也可以执行类似自己的JSONP处理程序:http://jsfiddle.net/6j6uk/(不确定X-Browser支持)