如何访问以下数据?目前我只想玩数据,以便我能更好地理解它是如何工作的。我以前从未使用过API,但我熟悉JSON的概念。
$.getJSON( "https://api.forecast.io/forecast/APIKEY/40.463487,17.248535", function( data ) {
console.log('here');
console.log(data);
});
我在我的本地尝试了这个并返回: XMLHttpRequest无法加载https://api.forecast.io/forecast/APIKEY/40.463487,17.248535。 Access-Control-Allow-Origin不允许原点http://weathercast.com。
我只需要数据。
答案 0 :(得分:9)
你不能做跨域AJAX查询,
如果要解决此问题,可以使用JSONP:
$.ajax({
url: "https://api.forecast.io/forecast/APIKEY/40.463487,17.248535",
dataType: "jsonp",
success: function (data) {
console.log('here');
console.log(data);
}
});
答案 1 :(得分:3)
这不起作用的原因是因为您的浏览器具有跨域安全策略。您无法向其他域发出JSON请求。
但是! JSONP救援! Forecast.io是否有JSONP端点?如果是这样,你很幸运。如果没有,您将需要为其他域的请求实现服务器端代理,并从您的JavaScript中调用该代理。