未捕获的SyntaxError:意外的令牌:ajax调用

时间:2013-10-19 16:45:53

标签: javascript jquery ajax json jsonp

所以我试图查询下面的json feed,但是我一直在主题中得到错误。 我在这个网站上搜索了可能的答案,但是到目前为止我没有遇到任何问题。注释掉了数据类型和jsonp,jsonpCallback也不是它,也就是数据,我确保它通过http://jsonformatter.curiousconcept.com/验证它确实存在。我真的不知道。

 $.ajax({                                                                                                                                                                                                        
            type: 'GET',                                                                                             
            url: 'http://raidbots.com/json/playerdata/us/mannoroth/usiris', 
            cache:true,                                                                                              
            dataType: 'jsonp',
            data: { 
                format: 'json',
            },                                                                                                       
            success: ranks,
            jsonpCallback:'callbackName',                                                                            
            error: function(data) { console.log(data); },
            jsonp: false,                                                                                                                                                
        });



 function callbackName(data){
   console.log("jsonpCallback");
 }

 var ranks = function(data) {
  console.log(data);
 }

谢谢 -art

1 个答案:

答案 0 :(得分:4)

错误在JSONp data中,因为它只是JSON而不是JSONp。 JSONp要求文档是包含函数调用的有效JavaScript。

如果他们不支持jsonp你需要使用代理脚本(例如服务器上检索文档的php脚本)或要求他们发送CORS头文件,这样你就可以使用普通的非JSONp AJAX调用来检索数据直接。