使用OpenWeather Onecall API获取天气时如何查询对应城市名称
OpenWeather Onecall API 获取对应城市名的解决方案
- 方法1:调用同平台逆地理编码接口
你调用Onecall API时已经拿到了返回结果里的lat(纬度)和lon(经度)参数,直接用这两个参数搭配你的现有OpenWeather API密钥,调用平台的逆地理编码接口即可,返回结果会直接包含标准城市名称、行政区划、国家等地址字段,不会出现坐标跨平台偏移的问题,是最适配的方案。 - 方法2:前端原生接口解析
如果你的定位权限是在前端向用户申请的,可以直接调用浏览器原生的地理逆解析接口,不需要额外发起第三方服务请求,适合轻量前端项目使用,注意需要用户授权定位权限才可正常使用。 - 方法3:本地地理库匹配
如果你的项目请求量较大,可以提前搭建本地城市经纬度范围数据库,直接用获取到的经纬度匹配对应城市,无需调用外部接口,响应速度最快,适合高并发场景。
注意:OpenWeather Onecall API的设计定位是返回纯天气时序数据,本身不会返回任何地址相关字段,无法直接从该接口的响应结果中提取到城市名称,必须通过经纬度进行逆地理编码获取。
内容的提问来源于stack exchange,提问作者Hama Sabah
相关产品推荐
相关产品推荐

