您的位置:首页 > Web前端 > JavaScript

ajax使用jsonp跨域调用webservice error错误信息"readyState":4,"status":200,"statusText":"success"

2016-06-29 13:49 746 查看
<span style="font-family: Arial, Helvetica, sans-serif;"></span><pre name="code" class="javascript">$.ajax({
type: "get", //用POST方式传输
dataType: "jsonp", //数据格式:JSON
url: 'url', //目标地址
async: false, //是否异步
jsonp: "jsapicallback", //服务端用于接收callback调用的function名的参数
jsonpCallback: "success_jsonpCallback",
success: function(obj) {
var result = obj;
<span style="white-space:pre">	</span>alert(result[0].r);
},
error:function(errormsg){
console.log(errormsg);
}
});
进入error,但输出的报错信息为:“{"readyState":4,"status":200,"statusText":"success"}"
原因是webservice返回的数据不是正确的jsonp格式
或者同一个webservice中处理多个jsonp请求,且jsonpCallback都缺省
此时使用 String callbackFunName = context.Request["jsapicallback"];
...  context.Response.Write(callbackFunName + rdata);的方式 ,无法正确获取带有callback方法名的jsonp对象,所以jsonpCallback尽量不要省略


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: