我从openweathermap.org收到错误的信息。 它将返回网站上给出的示例中显示的信息。
这是我的 HTML 代码:
<!DOCTYPE html>
<html>
<head>
<title>Your Weather</title>
<meta charset="utf-8">
<link rel="stylesheet" href="">
</head>
<body>
<div>
<h1>The Weather</h1>
<div>
<p>
<span id="show-weather"></span>
<span id="show-country"></span>
</p>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="custom.js"></script>
</body>
</html>
这是我的 JS 代码:
$(document).ready(function() {
$.ajax({
type: 'GET',
data: {
id: '2172797',
appid: 'b1b15e88fa797225412429c1c50c122a1'
},
url: 'https://openweathermap.org/data/2.5/weather/',
xhrFields: {
withCredentials: false
},
headers: {},
success: function(data) {
$("#show-weather").text("Your location latitude is: " + data.coord.lat + " and longitude is: " + data.coord.lon);
$("#show-country").text(" Your current location is: " + data.sys.name);
},
error: function(data) {
console.log('error');
console.log(data);
},
});
});
我无法获取城市名称或纬度或经度等当前信息。
答案 0 :(得分:0)
name属性位于根级别,因此您需要使用data.name
属性,如果需要国家/地区名称,则值应为data.sys.country
。 name
data.sys
的媒体资源
完整的工作代码:
$(document).ready(function() {
$.ajax({
type: 'GET',
data: {
id: '2172797',
appid: 'b1b15e88fa797225412429c1c50c122a1'
},
url: 'https://openweathermap.org/data/2.5/weather/',
xhrFields: {
withCredentials: false
},
headers: {},
success: function(data) {
//console.log(data);
$("#show-weather").text("Your location latitude is: " + data.coord.lat + " and longitude is: " + data.coord.lon);
$("#show-country").text(" Your current location is: " + data.sys.country);
},
error: function(data) {
console.log('error');
console.log(data);
},
});
});
&#13;
<body>
<div>
<h1>The Weather</h1>
<div>
<p>
<span id="show-weather"></span>
<span id="show-country"></span>
</p>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</body>
&#13;
答案 1 :(得分:0)
您随请求一起发送的id查询参数是城市ID ...与api docs示例中使用的相同ID。更改ID或查看有关如何使用其他查询参数查询其他城市的文档。