2016-08-06 24 views
1

Ich beginne mit JSON und versuche, eine Wetter-App mit Open Weather Map's API zu implementieren. Ich versuche, den Wert für den Schlüssel "name" in <h2 id="city"></h2> basierend auf den Koordinaten des Benutzers zurückzugeben, und ich bin unsicher, warum es derzeit nichts zurückgibt. Ich verstehe etwas ähnliches wurde before gefragt, aber ich bin mir nicht sicher, wie dies in diesem Fall gilt.Rendern von Daten mit JSON (Wetter-API)

$(document).ready(function() { 
    if (navigator.geolocation) { 
    navigator.geolocation.getCurrentPosition(function(position) { 
     var lati = position.coords.latitude; 
     var longi = position.coords.longitude; 
     var address = "api.openweathermap.org/data/2.5/weather?lat=" + lati +"&lon=" + longi + "&APPID=*****"; 

     $.getJSON(address, function(json) { 
     $("#city").html(json["name"]); 
   }); 
    }); 
    } 
}); 
+0

Überprüfen Sie meine Antwort unten. – Iceman

Antwort

1

Verwendung URL wie http://api.openweather... statt api.openweather...

Else der Browser denke, es wird eine relative Adresse ist und versuchen, es zu öffnen, wie http://example.com/api.openweather... ist die Seite URL der Annahme http://example.com.

Der Rest scheint zu funktionieren. Ich fügte das Präfix http:// hinzu und ersetzte den API-Schlüssel durch meinen, und der Code funktionierte wie erwartet in meiner Umgebung.

+0

Danke für den Kopf! Ich versuche es bei Codepen und sehe keine Veränderung. – gonzalo2000

+0

@ gonzalo2000 wird wahrscheinlich nicht in der '' novigator 'Erlaubnis Problem mit dem Codepen arbeiten? erhalten Sie die Erlaubnisaufforderung? – Iceman

+0

Guter Punkt. Nein, ich erhalte die Erlaubnis nicht. Ist das etwas, was ich im Code erklären kann, oder gibt es einen anderen analogen Service, der funktionieren würde? – gonzalo2000