【发布时间】:2012-08-10 13:54:48
【问题描述】:
看看这个小提琴:http://jsfiddle.net/3JRU6/
$(document).ready(function(){
var url='http://api.worldbank.org/topic/4?per_page=10&format=json&callback=?';
var query;
$('button').click(function(){
$.getJSON(url,function(json){
$.each(json.results,function(i,data){
window.alert("found");
$("#results").append('<p>'+data.value+'</p>');
});
});
});
});
我想连接到世界银行的 opendata,但是当我按下按钮时,什么也没有发生。我已经使用 twitter API 尝试了相同的脚本,然后它确实起作用了。原始链接没有 &callback=?但我不得不添加它,因为我遇到了错误。
提前致谢!
【问题讨论】:
-
从响应中可以看出,服务器没有返回JSONP,所以不能用Ajax访问。也许他们的 API 使用了与
callback不同的关键字,您应该查看他们的文档。 -
你已经加入了
getJson.js,但我很惊讶它在他们的网站上是如何工作的。 -
不确定这是否有帮助,但在从
url中取出callback=?参数时,我在控制台中收到如下错误:XMLHttpRequest cannot load http://api.worldbank.org/topic/4?per_page=10&format=json. Origin http://fiddle.jshell.net is not allowed by Access-Control-Allow-Origin.
标签: javascript html json jsonp