2017-02-22 12 views
0

openweathermap.orgから間違った情報が得られました。 ウェブサイトに示されている例で表示されている情報を返しています。ここOpenWeatherMapが間違った結果を返す

<!DOCTYPE html> 
<html> 
    <head> 
    <title>Your Weather</title> 
     <meta charset="utf-8"> 
     <link rel="stylesheet" href=""> 
    </head> 
    <body> 
     <div> 
     <h1>The Weather</h1> 
      <div> 
       <p> 
        <span id="show-weather"></span> 
        <span id="show-country"></span> 
       </p> 
      </div> 
     </div> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
     <script src="custom.js"></script> 
    </body> 
</html> 

そして、私のJSコードです:

$(document).ready(function() { 
    $.ajax({ 
     type: 'GET', 
     data: { 
      id: '2172797', 
      appid: 'b1b15e88fa797225412429c1c50c122a1' 
     }, 
     url: 'https://openweathermap.org/data/2.5/weather/', 
     xhrFields: { 
      withCredentials: false 
     }, 
     headers: {}, 
     success: function(data) { 

      $("#show-weather").text("Your location latitude is: " + data.coord.lat + " and longitude is: " + data.coord.lon); 
      $("#show-country").text(" Your current location is: " + data.sys.name); 

     }, 
     error: function(data) { 

      console.log('error'); 
      console.log(data); 
     }, 
    }); 
}); 

私は都市名や緯度や経度などの現在の情報を取得することができません

は、ここに私のHTMLコードです。

+0

レスポンスはどのように見えますか?あなたのコンソールでエラーが発生していますか? – zero298

答えて

0

nameプロパティはルートレベルにありますので、data.nameプロパティを使用する必要があります。国名が必要な場合は、値はdata.sys.countryです。 nameをという名前のプロパティが下にありませんdata.sys

完全な作業コード:

$(document).ready(function() { 
 
    $.ajax({ 
 
     type: 'GET', 
 
     data: { 
 
      id: '2172797', 
 
      appid: 'b1b15e88fa797225412429c1c50c122a1' 
 
     }, 
 
     url: 'https://openweathermap.org/data/2.5/weather/', 
 
     xhrFields: { 
 
      withCredentials: false 
 
     }, 
 
     headers: {}, 
 
     success: function(data) { 
 
//console.log(data); 
 
      $("#show-weather").text("Your location latitude is: " + data.coord.lat + " and longitude is: " + data.coord.lon); 
 
      $("#show-country").text(" Your current location is: " + data.sys.country); 
 

 
     }, 
 
     error: function(data) { 
 

 
      console.log('error'); 
 
      console.log(data); 
 
     }, 
 
    }); 
 
});
<body> 
 
     <div> 
 
     <h1>The Weather</h1> 
 
      <div> 
 
       <p> 
 
        <span id="show-weather"></span> 
 
        <span id="show-country"></span> 
 
       </p> 
 
      </div> 
 
     </div> 
 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
     
 
    </body>

0

あなたが要求して送信されたIDクエリパラメータは...同じ都市のIDですidはapiドキュメントの例で使用されています。他のクエリパラメータを使用して他の都市をクエリする方法については、IDを変更するか、ドキュメントをチェックアウトしてください。

関連する問題