和风天气输入任意城市名字获取天气信息
时间: 2023-08-26 21:04:33 浏览: 379
和风天气提供了全球城市搜索API,你可以通过Ajax请求该API,根据用户输入的城市名称获取天气信息。以下是一个示例代码:
```javascript
const xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
const response = JSON.parse(xhr.responseText);
console.log(response); // 获取天气信息
}
};
const city = 'New York'; // 用户输入的城市名称
xhr.open('GET', `https://geoapi.qweather.com/v2/city/lookup?location=${city}&key=your_api_key`, true);
xhr.send();
```
其中,`your_api_key` 是你在和风天气申请的API key,`location` 参数指定了查询的城市名称。在获取到城市信息后,你可以使用该城市的ID或者经纬度信息再次请求天气API获取天气信息。
```javascript
const xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
const response = JSON.parse(xhr.responseText);
console.log(response); // 获取天气信息
}
};
const cityId = '101010100'; // 假设获取到的城市ID为 101010100
xhr.open('GET', `https://devapi.qweather.com/v7/weather/now?location=${cityId}&key=your_api_key`, true);
xhr.send();
```
注意,和风天气提供的全球城市搜索API存在一定的调用次数限制和频率限制,需要根据自己的需求进行调整。
阅读全文