1

こんにちは、JavaScript を使用して最初の Web アプリを構築し、www.openweathermap.org/ から API を使用してデータをフェッチしています。ドキュメントに記載されているように API キーを使用しましたが、まだ認証されていないというエラーが発生します。関数などの呼び出し中にこのエラーが発生する理由は他にありますか。前もって感謝します。

    var APPID = "my_secret_key";
    var temp;
    var loc;
    var icon;
    var wind;
    var humidity;
    var direction;
    function updateByZip(zip){
      var url = "http://api.openweathermap.org/data/2.5/weather?" + 
                "zip = " + zip +
                "&APPID =" + APPID ;
    sendRequest(url);
     }

    function sendRequest(url){
      var xmlhttp = new XMLHttpRequest();
      xmlhttp.onreadystatechange = function(){
        if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
         var data = JSON.parse(xmlhttp.responseText) ;
         var weather = {}; 
         weather.wind = data.wind.speed; 
         weather.direction = data.wind.deg;
         weather.loc = data.name;
         weather.temp = data.main.temp;
         weather.icon = data.weather[0].id;
         weather.humidity=data.main.humidity;
         update(weather);
        }
       };
        xmlhttp.open("GET", url, true);
        xmlhttp.send();
        }
4

3 に答える 3

3

URL の等号の近くのスペースです。スペースを urlencoding し、APPID%20有効と認識されていないパラメーターを送信している可能性があります。

  var url = "http://api.openweathermap.org/data/2.5/weather?" + 
            "zip=" + zip +
            "&APPID=" + APPID;
于 2016-06-10T19:51:12.900 に答える