未捕获的SyntaxError:意外的令牌:

时间:2015-02-27 21:33:38

标签: jquery ajax json jsonp

原谅我,我对使用JSON / JSONP / AJAX完全不熟悉,并且在过去的24小时里一直在研究这个问题并且无法弄明白。感谢您的帮助。

我正试图从另一台服务器的简单JSON文件中获取信息,并在我的网站上非常清楚地显示它。

我正在尝试从以下位置获取信息的JSON文件: http://evewho.com/api.php?type=corplist&id=98224089

我正在尝试在#characters div中显示来自该JSON的字符名称: http://anomaly47.com/jsonp_test.html

到目前为止,我只是尝试使用以下代码连接并查看对象信息:

$(document).ready(function() {

var url = 'http://evewho.com/api.php?type=corplist&id=98224089&callback=?';

  $.getJSON(url, null, function(data){
        console.log(data);
      }
  )

});

我在控制台中一直收到以下错误:

Uncaught SyntaxError:意外的令牌: ?api.php键入= corplist和ID = 98224089&安培;回调= jQuery1111010067848535254598_1425072137785&安培; _ = 14250721377 ...:1

我不确定我在这里做错了什么。

再次感谢!

1 个答案:

答案 0 :(得分:1)

并非所有为js​​on提供服务的API都可以使用ajax访问。

您的API未返回jsonp数据格式且未启用CORS。

如果它是您的网站,并且您要从同一个域发出请求,请从网址中删除&callback=?,因为这会告诉jQuery该请求是针对jsonp的。

如果是跨域请求,您需要在服务器上设置代理以检索数据并对代理脚本进行ajax调用