只是做一些 JQuery AJAX,我一步一步来,但我一直得到 404

问题描述 投票:0回答:1

我只是想测试 JQuery AJAX,我会慢慢来。我在浏览器上打开该文件并使用 chrome 开发工具找出发生了什么,它说状态代码是 404。这告诉我我的 GET 没有任何进展?代码如下:

$(document).ready(function()
{$(".search button").click(function()
{getWeather(
    $(".search-bar").val()
)}
)}
);

function getWeather(city) {

var metric = "&units=metric";
var myAPI = "4f41b20d31ef924373402ebf9b9fe310";

var url="api.openweathermap.org/data/2.5/forecast?q=" + city + metric + "&appid=" + myAPI;

$.getJSON(url, function(data)

{
    console.log(data);

})

}

我检查了我的网址和所有内容,但我一直得到同样的东西。到目前为止我的代码有问题吗?现在这是一个简单的代码,但我不知道出了什么问题。

jquery ajax get
1个回答
0
投票

您缺少 URL 的根:

var url="//api.openweathermap.org/data/2.5/forecast?q=" + city + metric + "&appid=" + myAPI;
//       ^-- here

否则,当您告诉浏览器向

api.openweathermap.org
发出请求时,从结构上讲,这与向
index.html
或您自己服务器上的任何其他资源发出请求没有什么不同。如果不指定
//
来表示这是一个不同的主机,浏览器将从相对于当前页面的当前主机请求这个,这可能会变成这样:

https://localhost:12345/mypracticeproject/api.openweathermap.org/data/2.5/forecast?q=...

哪个可能不是你想要的。您不需要包括完整的协议(

http
https
),但至少需要包括
//
.

© www.soinside.com 2019 - 2024. All rights reserved.