2017-03-25 2 views
-2

Ich versuche, OpenWeatherMap zu verwenden und das JSON für das Wetter zu erhalten. in der Konsole sehen i 404 Nachricht, aber wenn ich die URL manuell besuchen gibt es mir die richtige JSONGetting 404, auch wenn die Verbindung funktioniert JSON

var latitude; 
 
var longitude; 
 
var apiId = "c440e3f473378f9705827ed71efe5dcc"; 
 
var request = new XMLHttpRequest(); 
 

 
function getLocation() { 
 

 
    if (navigator.geolocation) { 
 

 
    navigator.geolocation.getCurrentPosition(function getPosition(position) { 
 
     latitude = position.coords.latitude; 
 
     longitude = position.coords.longitude; 
 
     getJson(); 
 
    }); 
 

 
    } else { 
 
    alert('Geo location not working or not supported by your browser.'); 
 
    } 
 

 
} 
 

 
function getJson() { 
 

 
    request.open('GET', "api.openweathermap.org/data/2.5/weather?lat=" + latitude + "&lon=" + longitude + "&APPID=" + apiId + ""); 
 

 
    request.onload = function(data) { 
 
    console.log(data); 
 
    }; 
 

 
    request.send(); 
 

 
} 
 
getLocation();

+0

Sie vermissen ein Protokoll in dieser URL von Ihnen. Während wir Menschen verstehen, dass dies eine URI ist, wird Ihr Browser versuchen zu korrigieren, dass Ihr Computer nicht weiß, was damit zu tun ist. "http: //" oder "https: //" oder sogar "www" voranstellen. – Xorifelse

+0

Ich nehme an, dass Sie dies lokal auf Ihrem Gerät testen (und ohne lokalen Server), das bedeutet, dass Sie am Anfang jedes Links "https: //" oder "http: //" verwenden müssen, sonst wird es nur nehme an, dass es standardmäßig 'file: ///' ist. – Saharsh

+0

danke @Saharsh Ich benutze Codepen, damit ich Probleme habe, da OpenWeatherMap http verwendet, und es funktioniert nicht –

Antwort

2

Sie müssen http am Anfang der URL angeben

request.open('GET', "http://api.openweathermap.org/data/2.5/weather?lat=" + latitude + "&lon=" + longitude + "&APPID=" + apiId + ""); 
+0

danke, aber jetzt bekomme ich den Fehler, dass Anfrage blockiert ist, da Anfrage "https" sein sollte. Ich habe es zu url hinzugefügt und der Link funktioniert nicht (ich benutze Code Stift) –

+0

Was meinst du mit "es funktioniert nicht?" Erhalten Sie einen Fehler? –

Verwandte Themen