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:予期しないトークン:

JSON検証の問題だと思います。しかし、すべてのオンラインJSON検証ツールはテストに合格しています。

4

1 に答える 1

0

API は JSONP データではなく JSON を返すようです。JSONP は URL にコールバック クエリがあるため、getJSON は自動的にそれを解析しようとします。

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 に答える