如何仅通过城市名调用OpenWeatherMap API获取气象数据?
关于OpenWeatherMap API通过城市名获取气象预报的解决方案
- 完全可以仅通过城市名构造API请求来获取气象预报,你之前遇到40x错误是因为用错了接口。
- 正确的预报接口请求格式如下:
- 5天/3小时预报(可满足2天预报需求):
https://api.openweathermap.org/data/2.5/forecast?q={city.name}&appid={secret_key} - 逐小时预报(最多支持48小时,可满足2小时预报需求):
https://api.openweathermap.org/data/2.5/forecast/hourly?q={city.name}&appid={secret_key}
- 5天/3小时预报(可满足2天预报需求):
- 额外注意点:
- 若存在重名城市,可追加国家代码参数缩小范围,比如
q=Paris,FR - 确认你的API密钥权限覆盖对应预报接口,部分高级接口需要付费套餐支持
- 你之前使用的
/direct接口是地理编码工具,仅用于通过城市名查询经纬度、城市ID等信息,本身不提供气象预报数据,因此会返回错误
- 若存在重名城市,可追加国家代码参数缩小范围,比如
内容的提问来源于stack exchange,提问作者john_boy
相关产品推荐
相关产品推荐

