浏览器Api调用有效但Ajax没有

时间:2014-02-11 03:53:13

标签: javascript jquery ajax json

您好我正在测试http://airportcode.riobard.com的休息API呼叫,这样我就可以查找机场代码了。当我在浏览器中输入以下内容时:

http://airportcode.riobard.com/search?q=las%20vegas&fmt=JSON

我得到了正确的json。但是当我做一个json jQuery调用时:

var url = 'http://airportcode.riobard.com/search?q=las vegas&fmt=JSON';

// Request json
jQuery.getJSON(url, function(data){
    console.log(data);
});

我得到200这是好的,但响应对象是空的。为什么会发生这种情况?

感谢。

2 个答案:

答案 0 :(得分:1)

所以这笔交易是,我无法访问json,因为它不是来自我的其他javascript的同源。这是跨站脚本的一个很好的例子,我忘了它。

答案 1 :(得分:0)

检查控制台,它可能会显示

  

来源 _ __ _ __ _ __ _ _ 是不允许的通过Access-Control-Allow-Origin。

这意味着您需要在服务器中为响应添加一些标头。 特别是Access-Control-Allow-Origin到“*” 或者您可以尝试使用JSONP请求。与$.JSONP