错误回调{{readyState":4,"status":200,"statusText":"success"}

Dar*_*olo 16 javascript ajax jquery

我有这个url电话.url按预期返回一个json对象(直接浏览器调用)但是当我通过带有跟随行的ajax执行此操作时

$.ajax({
       url: url, 
       type: "GET",
       dataType:"jsonp",   
       success: function(data) {
          alert(data);
       },
       error : function(error) {
          alert("no good "+JSON.stringify(error));
       }
});
Run Code Online (Sandbox Code Playgroud)

它回报了我

no good {"readyState":4,"status":200,"statusText":"success"}
Run Code Online (Sandbox Code Playgroud)

我知道stackoverflow上有其他类似的问题,但似乎没有人解决它.

Que*_*tin 36

这表明HTTP请求成功但尝试解析数据却没有.

即数据未格式化为JSONP.


Dar*_*olo 5

这些变化解决了我的问题.

//服务器端

echo $_GET['callback'] . '('.json_encode($data_to_encode).')';
Run Code Online (Sandbox Code Playgroud)

// JS

$.ajax({
       url: url+"?callback=?", 
       type: "GET",
       dataType:"jsonp",   
       success: function(data) {
          alert(data);
       },
       error : function(error) {
          alert("no good "+JSON.stringify(error));
       }
});
Run Code Online (Sandbox Code Playgroud)