簡體   English   中英

沒有獲得對XMLHTTPRequest的響應

[英]didn't get response for XMLHTTPRequest

我嘗試從天氣API獲取天氣信息,但一切似乎都正常,但我不知道為什么我沒有收到任何回復,URL正常

  //get  Response to weather status based on latitude on longitude positions
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(function(position) {

            var lat = position.coords.latitude;
            var lon = position.coords.longitude;
            var apiKey = "d64b6f0e97c598ccf0f03718d1690fcc";
            var url = "api.openweathermap.org/data/2.5/weather?lat="
            var URL = url + lat + "&lon=" + lon + "&APPID=" + apiKey;
            console.log(URL);
            var xhr = new XMLHttpRequest();
            xhr.open("GET", URL, true);
            xhr.send();
            xhr.onload = function() {
                if (xhr.status == 200) {
                    document.getElementById("title").innerHTML = this.responseText;
                }
            }
        });

    } else {
        alert("Error");
    }

在瀏覽器中打開開發人員工具。

查看控制台。 查看是否有錯誤消息。

查看網絡標簽。 查看是否正在發出請求,是否在期望的位置發出請求以及是否獲得了期望的響應。

 var url = "api.openweathermap.org/data/2.5/weather?lat=" 

您從URL忘記了該方案。 您正在相對於當前頁面的URL發出請求。 幾乎可以肯定會導致404 Not Found錯誤。

 xhr.onload = function() { if (xhr.status == 200) { document.getElementById("title").innerHTML = this.responseText; } } 

您只有一個onload處理程序。 沒有onerror處理程序,因此沒有代碼被觸發,然后XHR收到404錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM