Difference between revisions of "通用预报接口/v2.2"
Liuzhonghua (talk | contribs) (→示例2如下) |
Liuzhonghua (talk | contribs) (→示例2如下) |
||
Line 20: | Line 20: | ||
=== '''示例2如下''' === | === '''示例2如下''' === | ||
− | <blockquote><code>[https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/weather.json?lang=en_US&unit=metric&tzshift=14400 https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/weather.json?lang=en_US&unit=metric&hourlysteps=2&daylysteps=2&getplacename=True]</code></blockquote><blockquote>'''语言选项 lang:'''(简体中文(zh_CN)、繁体中文(zh_TW)、美式英语(en_US)、英式英语(en_GB))</blockquote><blockquote>'''经纬度附近地址中英文名称:getplacename=True'''</blockquote><blockquote>'''单位制选项 unit:'''(默认为公制(metric)、科学单位体系(SI) 、英制(imperial))、(降水单位:mm/h)</blockquote><blockquote>'''时区偏移秒数:tzshift:''' | + | <blockquote><code>[https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/weather.json?lang=en_US&unit=metric&tzshift=14400 https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/weather.json?lang=en_US&unit=metric&hourlysteps=2&daylysteps=2&getplacename=True]</code></blockquote><blockquote>'''语言选项 lang:'''(简体中文(zh_CN)、繁体中文(zh_TW)、美式英语(en_US)、英式英语(en_GB))</blockquote><blockquote>'''经纬度附近地址中英文名称:getplacename=True'''</blockquote><blockquote>'''单位制选项 unit:'''(默认为公制(metric)、科学单位体系(SI) 、英制(imperial))、(降水单位:mm/h)</blockquote><blockquote>'''时区偏移秒数:tzshift:'''(默认为东八区,tzshift=28800;例如:印度东5.5区,tzshift=3600*5.5==19800,v2.3之后版本,返回时区信息,使用秒是为了支持像尼泊尔这样的差 5 小时 45 分钟的地区,它们有非整齐的偏移量)</blockquote><blockquote>'''定制返回预报总小时数:hourlysteps''':(例如:未来360小时,未来2小时)</blockquote><blockquote>'''定制返回变量列表:fields=tmp,vis''' 【'ast', 'rad', 'prc', 'tmp', 'wnd', 'hmd', 'cld', 'aqi', 'pm25', 'pm25w', 'sky', 'skyh', 'lfi', 'alr', 'pres', 'vis', 'dswrf'】</blockquote> |
==返回结构和说明== | ==返回结构和说明== |
Revision as of 08:43, 20 November 2018
本文版本:通用预报接口/v2.2,当前稳定版本版本:v2.5,历史版本:v2.2,v2.3,和 v2.4。
授权与认证
请先至彩云开放平台注册,注册后可以获得 token 。
把您的 token 拼到 API 请求的 URL 中,如
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/weather.json
其中 TAkhjf8d1nlSlspN 就是一个共用测试 token 。不要把私有token 告诉任何人!
请求样例
示例1如下
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.json
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.jsonp?callback=MYCALLBACK
token:这里是测试 token ,即 TAkhjf8d1nlSlspN
经纬度:经度在前,纬度在后,中间用半角逗号隔开,这里是 121.6544,25.1552
返回格式:json 或者 jsonp,jsonp 需提供回调函数名
示例2如下
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/weather.json?lang=en_US&unit=metric&hourlysteps=2&daylysteps=2&getplacename=True
语言选项 lang:(简体中文(zh_CN)、繁体中文(zh_TW)、美式英语(en_US)、英式英语(en_GB))
经纬度附近地址中英文名称:getplacename=True
单位制选项 unit:(默认为公制(metric)、科学单位体系(SI) 、英制(imperial))、(降水单位:mm/h)
时区偏移秒数:tzshift:(默认为东八区,tzshift=28800;例如:印度东5.5区,tzshift=3600*5.5==19800,v2.3之后版本,返回时区信息,使用秒是为了支持像尼泊尔这样的差 5 小时 45 分钟的地区,它们有非整齐的偏移量)
定制返回预报总小时数:hourlysteps:(例如:未来360小时,未来2小时)
定制返回变量列表:fields=tmp,vis 【'ast', 'rad', 'prc', 'tmp', 'wnd', 'hmd', 'cld', 'aqi', 'pm25', 'pm25w', 'sky', 'skyh', 'lfi', 'alr', 'pres', 'vis', 'dswrf'】
返回结构和说明
{ status:ok,
api_version:v2.2,
api_status:active,
unit:metric,
lang:en_US,
result:{
forecast_keypoint:cloudy, clear weather after 23 this midnight,
primary:0,
realtime:{status:ok,
temperature:-1.21,
pres:56320.24,
humidity:0.09,
wind:{direction:284.91,speed:30.12}},
precipitation:{local:{status:ok,intensity:0.0,datasource:gfs}},
cloudrate:0.3,
dswrf:677.9,
visibility:24.1,
skycon:PARTLY_CLOUDY_DAY,
ultraviolet:{index:5.0,desc:Moderat},
comfort:{index:11,desc:Icy wind cold},
pm25:3,
pm10:10.0,
o3:97.0,
no2:2.0,
so2:7.0,
co:0.4,
aqi:10,
hourly:{status:ok,
description:cloudy, clear weather after 23 this midnight,
temperature:[{value:-1.21,datetime:2018-11-20 16:00},{value:-0.51,datetime:2018-11-20 17:00}]},
pres:[{value:56320.2411405722,datetime:2018-11-20 16:00},{value:56309.4272949293,datetime:2018-11-20 17:00}],
humidity:[{value:0.09,datetime:2018-11-20 16:00},{value:0.11,datetime:2018-11-20 17:00}],
wind:[{direction:284.91,speed:30.12,datetime:2018-11-20 16:00},{direction:288.24,speed:32.91,datetime:2018-11-20 17:00}],
precipitation:[{value:0.0,datetime:2018-11-20 16:00},{value:0.0,datetime:2018-11-20 17:00}],
cloudrate:[{value:0.3,datetime:2018-11-20 16:00},{value:0.3,datetime:2018-11-20 17:00}],
dswrf:[{value:677.9121814107,datetime:2018-11-20 16:00},{value:596.25984,datetime:2018-11-20 17:00}],
visibility:[{value:24.1,datetime:2018-11-20 16:00},{value:24.1,datetime:2018-11-20 17:00}],
skycon:[{value:PARTLY_CLOUDY_DAY,datetime:2018-11-20 16:00},{value:WIND,datetime:2018-11-20 17:00}],
pm25:[{value:3,datetime:2018-11-20 16:00},{value:0,datetime:2018-11-20 17:00}],
aqi:[{value:10,datetime:2018-11-20 16:00},{value:0,datetime:2018-11-20 17:00}],
daily:{status:ok,
temperature:[{date:2018-11-20,max:1.19,avg:-4.35,min:-16.0},{date:2018-11-21,max:2.0,avg:-7.32,min:-18.0}],
pres:[{date:2018-11-20,max:56600.24,avg:56422.06,min:56309.43},{date:2018-11-21,max:56833.63,avg:56653.05,min:56553.63}],
humidity:[{date:2018-11-20,max:0.23,avg:0.14,min:0.09},{date:2018-11-21,max:0.15,avg:0.11,min:0.06}],
wind:[{date:2018-11-20,max:{direction:290.25,speed:35.9},avg:{direction:278.27,speed:19.65},min:{direction:230.17,speed:4.77}},{date:2018-11-21,max:{direction:276.13,speed:43.0},avg:{direction:262.47,speed:24.54},min:{direction:216.1,speed:12.48}}],
precipitation:[{date:2018-11-20,max:0.0,avg:0.0,min:0.0},{date:2018-11-21,max:0.0,avg:0.0,min:0.0}],
dswrf:[{date:2018-11-20,max:743.7,avg:321.5,min:0.0},{date:2018-11-21,max:748.3,avg:202.3,min:0.0}],
cloudrate:[{date:2018-11-20,max:0.76,avg:0.49,min:0.0},{date:2018-11-21,max:0.15,avg:0.02,min:0.0}],
visibility:[{date:2018-11-20,max:24.1,avg:24.1,min:24.1},{date:2018-11-21,max:24.1,avg:24.1,min:24.1}],
skycon:[{date:2018-11-20,value:PARTLY_CLOUDY_DAY},{date:2018-11-21,value:CLEAR_DAY}],
skycon_08h_20h:[{date:2018-11-20,value:CLEAR_DAY},{date:2018-11-21,value:CLEAR_DAY}]},
skycon_20h_32h:[{date:2018-11-20,value:PARTLY_CLOUDY_NIGHT},{date:2018-11-21,value:CLEAR_NIGHT}],
ultraviolet:[{index:5,desc:Very high,datetime:2018-11-20},{index:5,desc:Very high,datetime:2018-11-21}],
comfort:[{index:13,desc:Dry cold,datetime:2018-11-20},{index:13,desc:Dry cold,datetime:2018-11-21}],
carWashing:[{index:1,desc:Suitable,datetime:2018-11-20},{index:1,desc:Suitable,datetime:2018-11-21}],
coldRisk:[{index:4,desc:Extremely prone,datetime:2018-11-20},{index:4,desc:Extremely prone,datetime:2018-11-21}],
dressing:[{index:8,desc:Extremely cold,datetime:2018-11-20},{index:8,desc:Extremely cold,datetime:2018-11-21}],
pm25:[{date:2018-11-20,max:3,avg:1.12,min:0},{date:2018-11-21,max:1,avg:0.58,min:0}],
aqi:[{date:2018-11-20,max:10,avg:1.25,min:0},{date:2018-11-21,max:0,avg:0.0,min:0}],
astro:[{date:2018-11-20,sunset:{time:19:07},sunrise:{time:08:40}},{date:2018-11-21,sunset:{time:19:07},sunrise:{time:08:41}}],
minutely:{status:ok,
precipitation_2h:[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0],
precipitation:[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0],
datasource:gfs,
description:No snow in the next hour}
},
placename:Nyima, Nagqu, Tibet, China,
location:[31.658613,
87.815109]
server_time:1542702509,
tzshift:28800,
}
变量说明
逐小时预报,没有生活指数变量
名称 | 健值路径(jsonpath) | 量 | 时间粒度 | 地理范围 | 注释 |
---|---|---|---|---|---|
温度 | $.result.hourly.temperature.value | 温度 | 逐小时预报 | 全球 | 地表2米气温 |
气压 | $.result.hourly.pres.value | 气压(Pa) | 逐小时预报 | 全球 | 地面气压 |
相对湿度 | $.result.hourly.humidity.value | 相对湿度(%) | 逐小时预报 | 全球 | 地表2米湿度 |
风向 | $.result.hourly.wind.direction.value | 风向 | 逐小时预报 | 全球 | 地表10米风向 |
风速 | $.result.hourly.wind.speed.value | 风速 | 逐小时预报 | 全球 | 地表10米风速 |
本地降水强度 | $.result.hourly.precipitation.value | 降水强度 | 逐小时预报 | 全球 | 本地降水强度 |
云量 | $.result.hourly.cloudrate.value | 云量(0.0-1.0) | 逐小时预报 | 全球 | 全天总云量 |
短波辐射 | $.result.hourly.dswrf.value | 向下短波辐射通量(W/M2) | 逐小时预报 | 全球 | 地表向下短波辐射通量 |
能见度 | $.result.hourly.visibility.value | 能见度 | 逐小时预报 | 全球 | 地表水平能见度 |
主要天气现象 | $.result.hourly.skycon.value | 天气状况 | 逐小时预报 | 全球 | 天气状况 |
逐小时预报自然语言描述 | $.result.hourly.description | 舒适度指数自然语言 | 逐小时预报 | 全球 | 舒适度指数及其描述 |
综合预报自然语言描述 | $.result.hourly.forecast_keypoint | 紫外线指数自然语言 | 逐小时预报 | 全球 | 逐小时和逐分钟天气预报,综合自然语言描述 |
PM25浓度 | $.result.hourly.pm25.value | PM25浓度(μg/m3) | 逐小时预报 | 大陆、港澳台、暂无印度 | PM25浓度 |
AQI | $.result.hourly.aqi.value | 国标AQI | 逐小时预报 | 大陆、港澳台、暂无印度 | 国标AQI |
天气现象
天气现象 | 代码 |
---|---|
晴(白天) | CLEAR_DAY |
晴(夜间) | CLEAR_NIGHT |
多云(白天) | PARTLY_CLOUDY_DAY |
多云(夜间) | PARTLY_CLOUDY_NIGHT |
阴 | CLOUDY |
大风 | WIND |
雾霾 | HAZE |
雨 | RAIN |
雪 | SNOW |
支持的单位制
1.目前支持的单位制包括:科学单位体系(SI,大写)、英制(imperial)、公制(不带参数&unit默认公制,公制还包括: metric:v1和metric:v2):
单位制 要素
|
SI(科学单位体系) | imperial(英制) | metric:v1(公制v1) | metric:v2(公制v2) | default metric(默认公制) |
---|---|---|---|---|---|
实况降水量 | 米/秒(meter/sec) | 英寸/小时(in/hr) | 雷达降水强度(0~1) | 毫米/小时(mm/hr) | 雷达降水强度(0~1) |
逐分钟降水短临预报降水量 | 米/秒(meter/sec) | 英寸/小时(in/hr) | 雷达降水强度(0~1) | 毫米/小时(mm/hr) | 雷达降水强度(0~1) |
逐小时预报降水量 | 米/秒(meter/sec) | 英寸/小时(in/hr) | 雷达降水强度(0~1) | 毫米/小时(mm/hr) | 毫米/小时(mm/hr) |
逐日预报降水量 | 米/秒(meter/sec) | 英寸/小时(in/hr) | 雷达降水强度(0~1) | 毫米/小时(mm/hr) | 毫米/小时(mm/hr) |
距离 | 米(m) | 英里(mi) | 公里(km) | 公里(km) | 公里(km) |
温度 | 开尔文(K) | 华氏度(℉) | 摄氏度(℃) | 摄氏度(℃) | 摄氏度(℃) |
气压 | 帕(Pa) | 帕(Pa) | 帕(Pa) | 帕(Pa) | 帕(Pa) |
相对湿度 | 0~1 | 0~1 | 0~1 | 0~1 | 0~1 |
风向 | 从北顺时针(0~360°) | 从北顺时针(0~360°) | 从北顺时针(0~360°) | 从北顺时针(0~360°) | 从北顺时针(0~360°) |
风速 | 米/秒(m/s) | 英里/小时(mi/hr) | 公里/小时(km/hr) | 公里/小时(km/hr) | 公里/小时(km/hr) |
云量 | 0~1 | 0~1 | 0~1 | 0~1 | 0~1 |
能见度 | 米(m) | 英里(mi) | 公里(km) | 公里(km) | 公里(km) |
unit=metric:v1时,所有类型中precipitation的单位都是:雷达降水强度(0~1)
unit=metric:v2时,所有类型中precipitation的单位都是:毫米/小时(mm/hr)
2.判断降水等级:
- 带参数&unit=metric:v1,请求实况、分钟级、逐小时和逐日降水强度,单位都为雷达降水强度(0 ~ 1);
- 雷达降水强度(0 ~ 1)判断降水等级:0.03~0.25 小雨(雪), 0.25~0.35 中雨(雪), 0.35~0.48大雨(雪), >0.48 暴雨(雪);
- v2.4版本中,本地存在降水时,可以根据skycon(存在于realtime、hourly、daily字段),和skycon_08h_20h和skycon_20h_32h(存在于daily字段),中的:LIGHT_RAIN, MODERATE_RAIN, HEAVY_RAIN, STORM_RAIN(LIGHT_SNOW, MODERATE_SNOW, HEAVY_SNOW,STORM_SNOW)直接获取降水等级
- 大暴雨(雪)和特大暴雨(雪),需要根据24小时累计公制降水量(mm/24hr)来判断,研发中...