Ich mache gerade den freecampcode curriculum Ich bin auf der lokalen Wetterstation.Kann Daten mit getJSON nicht extrahieren
Mein Problem hier ist jedes Mal, wenn ich versuche zu verwenden, ich bekomme apiLink ist nicht definiert. Ich verstehe, dass der .getJSON-Teil nicht mit der var innerhalb der DefinedCordinates-Funktion definiert werden kann.
Auch ich habe versucht, den direkten API-Link auf die .getJSON-Funktion zu verwenden, aber selbst damit bekomme ich 0 Eingabe von json, im mit console.log (Daten) und $ ("# temp") die Eingabe von json.
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>My Local Weather App</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link rel="stylesheet" type="text/css" href="custom.css">.
<script type="text/javascript">
$(document).ready(function(){
getCordinates();
$.getJSON(apiLink, function(data){
console.log(data);
})
})
function getCordinates(){
navigator.geolocation.getCurrentPosition(definedCordinates);
}
function definedCordinates(position){
var latitude = Math.floor(position.coords.latitude);
var longitude = Math.floor(position.coords.longitude);
var apiLink = "api.openweathermap.org/data/2.5/weather?lat=" + latitude +"&lon="+ longitude +"&APPID=##########";
return apilink;
}
</script>
<body>
<div class="container-fluid">
<div class="row" id="titleRow">
<div class="col-md-4 col-md-offset-4">
<h1>My Local Weather App</h1>
</div>
</div>
<div class="row" id="locationRow">
<div class="col-md-4 col-md-offset-4">
<div class=row">
<div class="col-md-6" style="background-color: grey">
<p style="text-align:center">icon</p>
</div>
<div class="col-md-6" style="background-color: yellow">
<p style="text-align:center" id="temp">temp</p>
</div>
</div>
</div>
</div>
<div class="row" id="dataRow">
<div class="col-md-6 col-md-offset-3">
<div class="row">
<div class="col-md-4" style="background-color: grey">
<p id="name"> city name</p>
</div>
<div class="col-md-4" style="background-color: yellow">
<p> sky</p>
</div>
<div class="col-md-4" style="background-color: grey">
<p> wind</p>
</div>
</div>
</div>
</div>
<div class="row" id="poweredBy">
<div class="col-md-6 col-md-offset-3">
<div class="row">
<div class="col-md-6" id="powered">
<p> Powered by openweathermap.org API </p>
</div>
<div class="col-md-6"style="background-color: yellow">
<p> button celsius or farh </p>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
Ich versuche Ihre Lösung, aber ich habe keine Ausgabe auf Firefox Konsole erhalten. –
Überprüfen Sie die Anforderung in der Konsole, um sicherzustellen, dass sie wie erwartet funktioniert. Lassen Sie mich wissen, wenn Sie einen Fehler erhalten –
Vielen Dank für die schnelle Antwort, bekomme ich den folgenden Fehler: "Header CORS" Access-Control-Allow-Origin "fehlt" –