1、ICS 点击此处添加中国标准文献分类号DB 41河 南 省 地 方 标 准DB 41/T XXXXXXXXX气象服务数据接口规范(征求意见稿)XXXX - XX - XX 发布 XXXX - XX - XX 实施河 南 省 质 量 技 术 监 督 局 发 布DB41/T XXXXXXXXXI前 言本标准按照GB/T 1.12009给出的规则起草。本标准由河南省气象标准化技术委员会提出并归口。本标准起草单位:河南省气象服务中心。 本标准主要起草人:王婉、郭学峰、武鹏、徐鹏、杜明哲、俆延锋、刘玉珠、张九营、郑戊辰。本标准属首次发布。DB41/T XXXXXXXXX1气象服务数据接口规范1 范围本标
2、准规定了河南省气象数据服务接口的访问方法、授权机制和接口说明。本标准适用于气象行业和相关气象服务信息应用单位和个人进行气象服务信息系统设计、研发和维护。2 规范性引用文件下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。RFC 1738 统一资源定位器RFC 2616 超文本传输协议RFC 2818 基于安全套接字的超文本传输协议3 术语和定义下列术语和定义适用于本标准。3.1 域名系统 DNS Domain Name System因特网作为可以将域名和IP地址相互映射的一个分布式数据库,
3、能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。3.2 JavaSoript 对象表示法 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。3.3 统一资源定位符 URL (Uniform Resource Locator)对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示。3.4 气象服务数据在决策、公众和专业气象服务中向政府、社会和生产部门提供的数据。4 接口约定4.1 接口提供方式对气象服务数据的访问对应唯一的资源标示符(URL网址),采用HTTP协议的POST方式进行。4.2 服务请求字符串及返回结果编码DB41
4、/T XXXXXXXXX2服务请求字符串及返回结果编码采用UTF-8字符集。5 访问方法5.1 访问步骤a) 用户向河南省气象服务中心申请,由河南省气象服务中心向用户发放 APPid 和 App 密钥;b) 用户通过 APPid 和 App 密钥登陆平台,获取验证码 Key 值(Key 值有效期为 3 天,有效期内可重复使用,超过有效期系统为用户重新生成 Key 值);c) 用户获取气象服务数据资源地址:通过平台获取气象服务数据接口资源访问地址;d) 用户构建气象服务数据资源请求地址:在气象服务数据资源地址中加入 APPid 和 Key 值,形式为“&appid=&key=”,生成服务资源请求
5、地址;e) 用户采用 HTTP POST 请求访问方式调用构建好的气象服务数据资源请求地址,获取返回结果。5.2 服务请求5.2.1 请求字符串的组成服务器请求字符串应包含数据接口,可包含请求参数、访问令牌等信息,不可包含明文密码等敏感信息。5.2.2 数据接口地址数据接口地址按照RFC 1738中URL的有关规定编写,其中服务器地址不宜采用IP地址,宜采用域名。5.2.3 服务请求参数5.2.3.1 位置参数位置参数可采用下列四种编码之一:a) 中华人民共和国行政区划代码,所有行政的参数输入必须是 12 位,如果是省市县乡镇等不足12 位的用 0 补全 12 位(比如:河南省为 410000
6、000000);b) 气象站标识;c) 经纬度信息;d) 其它约定的位置信息。5.2.3.2 时间参数时间参数全部采用yyyyMMddHHmmss的格式(其中yyyy表示4位年,MM表示两位月,dd表示两位日,HH表示24小时制两位时,mm表示两位分,ss表示两位秒)。如无特殊说明,时间为UTC时间5.3 服务响应5.3.1 返回格式数据服务接口均以JSON格式返回数据。格式示例参见附录A。DB41/T XXXXXXXXX35.3.2 返回结果内容服务请求返回结果包括响应代码、响应消息和数据体三部分。其中:a) 相应代码 resCode 为整数型,详细代码表及说明参见附录 B;b) 响应消息
7、resMsg 字段为返回成功或失败的结果说明,具有明确的含义,便于阅读。6 授权机制6.1 用户授权基本要求气象服务数据接口包括以下授权方式:a) 用户唯一标识码授权,为每一用户提供唯一授权访问标识;b) 用户密码授权,为每一用户提供用户和密码;c) 用户签名授权,在为每一个用户提供唯一授权标识的基础上,通过加密算法对服务请求字符串进行加密。6.2 用户签名授权算法将接口请求字符串的参数(AppId与App密钥除外)按照顺序拼接成字符串,再加上时间戳(格式为yyyyMMdd)与App密钥形成新的字符串,对新字符串做MD5算法的32位加密,形成Key值。7 效能要求7.1 并行性气象服务数据接口
8、应提供多用户并行访问支持。7.2 响应时间气象服务数据接口响应时间应小于500 ms。8 接口说明气象服务数据接口应提供接口说明,并应与气象服务数据接口一起提交用户使用。接口说明书应包括气象服务数据接口描述、调用请求方式、参数说明、常用参数代码等内容,并给出数据接口调用示例代码。数据接口说明示例参见附录C。DB41/T XXXXXXXXX4A A附 录 A(资料性附录)JSON 格式示例JSON 格式:“resCode”:”响应代码”,“resMsg”:”成功或失败结果说明”,“data”:iTems:接口返回的 JSON 数据示例见表 A.1。表 A.1 接口返回的 JSON 数据示例名称
9、数据类型 说明resCode Int 响应代码(000:正常)resMsg String 响应消息(错误消息描述)data Array 数据体DB41/T XXXXXXXXX5B B附 录 B(资料性附录)返回代码及说明接口返回代码及说明见表B.1。表 B.1 接口返回代码及说明序号 返回代码 说明1 000 接口请求正常,数据返回正常2 001 接口请求正常,数据解析处理过程异常3 002 接口请求正常,请求参数格式异常或残缺4 003 接口服务不存在,请求资源为空5 004 资源服务器正常,但是资源解析为空6 005 接口请求正常,处理过程中资源路径配置错误7 006 账号异常,账户不存在
10、8 007 账号正常,appid异常9 008 账号正常,key异常10 009 账号正常,appi及key均异常11 010 Key过期DB41/T XXXXXXXXX6C C附 录 C(资料性附录)数据接口说明示例实况降雨量统计接口说明示例见表C.1。表 C.1 实况降雨量统计接口说明接口名称 实况降雨量统计接口地址 http:/domain/api/wec/dc_cimiss_getTotalRain&appid=abc123&timeequal=20180814150000&hours=-72参数说明appid:用户appid(申请用户时获取的)key=a1a0e37ba47b667f
11、28cf1a229ad8b66ftimeequal:观测时间hours:小时累计(如:-1,-3,-6,-12,-24,-48,-72)返回值“resCode”:“0”,“resMsg”:”获取成功”,“data”: “Cnty“:“林州市“,“Admin_Code_CHN“:“410581“,“Station_Name“:“安阳“,“Value“:0.0,“Lon“:113.815,“Station_Id_C“:“53889“,“City“:“安阳市“,“Lat“:36.0478,“Cnty“:“林州市“,“Admin_Code_CHN“:“410581“,“Station_Name“:“安阳“,“Value“:0.0,“Lon“:114.367,“Station_Id_C“:“53898“,“City“:“安阳市“,“Lat“:36.1116_