0

我想获取天气信息。我正在尝试使用 jQuery 来实现。所以这是我的代码:

$(document).ready(function(){
var weatherURL = 'http://weather.yahooapis.com/forecastjson?w=20066287&u=c&callback=?';
$.getJSON(weatherURL, function(data){
    //console.log('done');
}); });

看来这行得通。但它输出我

Uncaught SyntaxError: Unexpected token :

我认为这是一个 JSON 验证问题。但是所有在线 JSON 验证工具都通过了测试。

4

1 回答 1

0

似乎 API 返回的是 JSON,而不是 JSONP 数据;getJSON 会自动尝试将其解析为 JSONP,如果 URL 中有回调查询:

如果 URL 包含字符串“callback=?” (或类似的,由服务器端 API 定义),请求被视为 JSONP。

http://api.jquery.com/jQuery.getJSON/


尝试这个:

$(document).ready(function(){
    var weatherURL = 'http://weather.yahooapis.com/forecastjson?w=20066287&u=c';
    $.ajax({
      url: weatherURL,
      dataType: 'json',
      success: function(data) {
        //console.log('done');
      }
    });
});
于 2012-06-04T10:51:12.530 回答