javascript - ajax死活不走success,只走error,请求状态码为200.
求解,如何解决呢?另外一个域名走是OK的,但这个域名死活不走,前端代码如下:
后端代码如下:
回复内容:
求解,如何解决呢?另外一个域名走是OK的,但这个域名死活不走,前端代码如下:
后端代码如下:
接口没处理callback吧?
写法没有错,估计是服务器端返回的不是jsonp
格式,回调处理失败了。
$.ajax 默认的jsonp
回调参数是?callback=_XXXX
,看看后台处理和返回是否正确。
服务器return的值错了呀 你返回的是空值啊看上去 如果有一个什么 {"result":"successful"}
之类的试试?
Javascript:添加
$.ajax({
....
jsonp:'jsonp_callback',
jQuery会使用AJAX GET请求一个 /url/?callback=jsonp_callback
的URL
然后会执行 jsonp_callback(result)
的JavaScript的回调
function(){
return string;
}
javascript收到的就会是一个String类型的输出。并不是JSON。不是JSON就DIE掉了。
function (){
// 这里是callback还是jsonp_callback忘了。具体百度一下
return $_GET['callback']."(".json_encode($string).")";
// 实际返回并输出的将会是: `jsonp_callback("string")`
}
update
看图说话:
ajax请求地址为http://baidu.com
实际请求地址为http://baidu.com/?callback=xxxxxxx&_=xxx&_=xxxx
为什么不用数字代替返回内容啊。
dataType与返回值不符,建议把这个参数拿掉让jquery自动识别返回值。
另外这不是jsonp吧?