OpenWeatherMap
天气
- 认证方式
- API Key
- HTTPS
- Yes
- CORS
- Unknown
- 分类
- 天气
- 文档 / URL
- https://openweathermap.org/api
简介
OpenWeatherMap 是使用最广泛的天气 API 之一,提供全球任意地点的当前天气、5 天 / 3 小时间隔预报;付费档还包含历史天气、逐分钟降水、空气污染等数据。
使用前需要注册一个免费 API 密钥。免费额度覆盖当前天气和 5 天预报,对大多数业余项目和原型开发完全够用。
快速开始
按城市名获取当前天气(替换 YOUR_API_KEY):
curl "https://api.openweathermap.org/data/2.5/weather?q=London&units=metric&appid=YOUR_API_KEY"
5 天 / 3 小时预报:
curl "https://api.openweathermap.org/data/2.5/forecast?q=London&units=metric&appid=YOUR_API_KEY"
常用参数:
| 参数 | 用途 |
|---|---|
q |
城市名(London、London,uk),也可以改用 lat/lon |
units=metric |
摄氏;imperial 为华氏(默认是开尔文!) |
lang=zh_cn |
中文天气描述 |
appid |
你的 API 密钥 |
注意:响应默认使用开尔文——请传
units=metric获取摄氏度。
认证方式
- 在 openweathermap.org 免费注册账号,生成 API 密钥(注册后通常几分钟内生效)。
- 每次请求通过
appid查询参数携带密钥。 - 密钥请保存在服务端,切勿在前端代码中暴露。
速率限制与注意事项
- 免费层:当前天气 + 预报约 1,000 次/天(具体以定价页为准)。
- 超限请求返回
429;配额按滚动窗口重置。 - 历史天气、逐分钟降水、空气污染等接口需要付费订阅。
- 全球覆盖,但不同地区的数据更新频率与准确性有差异。
常见问题
OpenWeatherMap 免费吗? 有免费层(约 1,000 次/天),覆盖当前天气与 5 天预报;更高配额和更多接口需要付费。
为什么温度数值这么大?
OpenWeatherMap 默认返回开尔文——加 units=metric 即可得到摄氏度。
如何获取 API 密钥? 在 openweathermap.org 注册后,进入 API Keys 页面生成,通常几分钟内生效。
可以在浏览器直接调用吗? CORS 不保证——建议从服务端或小型代理调用。