《2022年服务接口形式 .pdf》由会员分享,可在线阅读,更多相关《2022年服务接口形式 .pdf(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、I 项目编号INFO-115-C01 文档编号TR-REC-032 中国科学院数据应用环境建设与服务元数据访问服务接口规范(征求意见稿)中国科学院数据应用环境建设与服务项目组 2009 年 6 月名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 20 页 -II 目次1 范围.12 规范性引用文件.13 术语和定义.14 符号与缩略语.25 数据格式定义.25.1 接口的编码方式及响应格式.25.1.1 接口编码方式.25.1.2 接口响应格式.35.1.3 接口响应请求状态码.36 接口规范.46.1 采用协议.46.2 接口安全.46.3 连接方式.56.4 技术实现.66.5
2、 接口列表.66.6 建库单位开放接口.76.6.1 元数据收割接口.76.6.2其他接口 .12附录 A(资料性附录)OpenURL.18名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 20 页 -1 元数据访问服务接口规范 1 范围本规范规定了中国科学院数据应用环境建设与服务项目内元数据访问服务接口采用的协议,连接方式,调用参数以及数据的返回格式。2 规范性引用文件下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB 18030-2005 信息技术中文编码字符集TR-
3、REC-014 核心元数据标准TR-REC-017 资源唯一标识符规范3 术语和定义下列术语和定义适用于本规范。资源 resource 可以被标识的实体对象或服务。在本规范准中,特指可被标识的数据集、数据或服务。数据集 dataset 由相关数据组成的可标识集合。一个数据集可能是一个较小的数据集合,在物理上或逻辑上位于一个较大的数据集之内;反之,一个数据集也可能由若干数据集组成,是这些子数据集的父数据集。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 20 页 -2 本规范中,数据集指中国科学院数据应用环境建设与服务项目的主题数据库、参考数据库、专题数据库、专业数据库及其各级子库
4、。数据 data 对事实、概念或指令的一种形式化表示,适用于以人工或自动方式进行通信、解释或处理。本规范中,数据是指所有能输入到计算机并被计算机程序处理的符号的介质的总称,是用于输入电子计算机进行处理,具有一定意义的数字、字母、符号和模拟量等的通称。服务 service 本规范中,服务是指数据应用环境建设与服务项目中数据集满足应用系统或者人的需要时,与之发生的“直接”接触行为及有关结果。标识符 identifier 用于标识数据对象或服务项目的一组字符。资源唯一标识符 resource unique identifier 唯一标识资源的一组字符。4 符号与缩略语URI 统一资源标识符(Unif
5、orm Resource Identifier)URL 统一资源定位符(Uniform Resource Locator)XML 可扩展标记语言(Extensible Markup Language)5 数据格式定义5.1 接口的编码方式及响应格式5.1.1 接口编码方式接口响应的数据基于xml 语言格式,编码方式采用自定义编码的方式(常用编码方式包括:UTF-8、GBK、GB2312、ISO-8859-1 等),接口响应数据所使用的编码方式必须在返回 XML 头信息的encoding 属性中说明。名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 20 页 -3 例如:5.1.2
6、接口响应格式 请求服务响应的状态码 相关信息 5.1.3 接口响应请求状态码以下状态码只列出接口中遇到的普遍问题,可根据数据库建库规范中规定的范围增加。通用状态码相关说明200 服务调用成功400 请求格式错误401 未授权访问402 不可识别的verb 403 服务器拒绝访问404 指定的资源未找到408 请求超时500 服务器内部错误响应状态码返回格式:名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 20 页 -4 响应请求状态码 响应请求状态码的描述 6 接口规范6.1 采用协议HTTP1.1(超文本传输协议)超文本传输协议(HTTP)是一种为分布式,合作式,超媒体信息系统
7、。它是一种通用的,无状态(stateless)的协议,除了应用于超文本传输外,它也可以应用于诸如名称服务器和分布对象管理系统之类的系统,这可以通过扩展它的请求方法,错误代码和报头来实现。HTTP 的一个特点是数据表现形式是可输入的和可协商性的,这就允许系统能被建立而独立于数据传输。HTTP是一个客户端和服务器端请求和应答的标准(TCP)。客户端是终端用户,服务器端是网站。通常,由HTTP客户端发起一个请求,建立一个到服务器指定端口(默认是80端口)的TCP连接。HTTP服务器则在那个端口监听客户端发送过来的请求。一旦收到请求,服务器(向客户端)发回一个状态行,比如HTTP/1.1 200 OK
8、,和(响应的)消息,消息的消息体可能是请求的文件、错误消息、或者其它一些信息。6.2 接口安全采用基于IP 地址的身份验证方式。在服务调用的过程中,服务提供者获取调用者的ip地址,在本地保存的授权访问ip 地址列表中查询,认证通过执行服务返回数据,不通过则名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 20 页 -5 拒绝服务。认证流程如下图所示:验证访问 ip获得服务调用者ip调用服务返回数据YES拒绝服务NO图 6-1 基于 ip 地址的身份认证方式拒绝服务返回数据格式:403 服务拒绝访问-ip 地址认证未通过 6.3 连接方式POST 方式(必须实现):POST 方法被用
9、于请求源服务器接受请求中的实体作为请求资源的一个新的从属物。POST 方法的实际功能是由服务器决定的,并且经常依赖于请求URI(Request-URI)。POST 提交的实体是请求URI 的从属物,就好像一个文件从属于一个目录,一篇新闻文章从属于一个新闻组,或者一条记录从属于一个数据库。POST 方法的响应是可缓存的。GET 方式(可选):GET 方法意思是获取被请求URI(Request-URI)指定的信息(以实体的格式)。如果名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 20 页 -6 请求 URI 涉及到一个数据生成过程,那么这个生成的数据应该被作为实体在响应中返回,但这
10、并不是过程的资源文本,除非资源文本恰好是过程的输出。GET 请求的响应是可缓存的。6.4 技术实现接口采用OpenURL 技术实现,OpenURL 技术规范详见附录A。接口语法格式说明:http:/url/service?query?号 前 面 为 科 学 数 据 库 参 建 单 位 提 供 的 服 务 地 址,需 要 在 资 源 注 册 系 统(http:/)中注册。只有注册的服务科学数据中心才可以进行访问。query 部分包括多组参数名称与参数值,其中最主要的verb 参数,定义了访问服务的具体名称见接口列表中的接口名称。6.5 接口列表本规范所涉及的接口见下表:接口提供方接口类型接口名称
11、接口描述建库单位元数据收割接口dhGetDatabaseMetadata 核心元数据获取接口dhGetCatalog 概念树收割接口其他接口 接口基本信息获取接口sysDatabaseStatistic 数据库统计接口sysGetEntityList 数据表记录数获得接口cmsGetNews 新闻收割接口sysStatus 服务状态监控接口名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 20 页 -7 6.6 建库单位开放接口6.6.1 元数据收割接口6.6.1.1 dhGetDatabaseMetadata接口说明:元数据收割接口,根据数据集唯一标识,获得当前数据集的核心元数据
12、信息请求参数说明:verb:dhGetDatabaseMetadata uri:数据集唯一标识调用示例:http:/url/service?verb=dhGetDatabaseMetadata&uri=cn.csdb.plants 响应格式说明:详见 TR-REC-014 核心元数据标准标准响应格式示例:名称 唯一标识符 关键词(可重复)简介 目的 类型 创建者(可重复)其他贡献者 来源 创建日期 更新频率 名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 20 页 -8 数据格式 记录数 存储量 时间范围 空间范围 类目名称(可重复)分类表 语种 URL(可重复)数据志 质量报告
13、 关联类型 名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 20 页 -9 关联数据库名称 关联数据库 URI 权限声明 共享声明 联系人名称 单位 通信地址 电话 Email 元数据标准 元数据创建日期 联系人姓名 单位 通信地址 电话 Email 名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 20 页 -10 6.6.1.2 dhGetCatalog 接口说明:获取主题库概念树(导航目录)接口请求参数说明:verb:dhGetCatalog 调用示例:http:/url/service?verb=dhGetCatalog 响应格式说明:概念树包括root,
14、node 和 leaf 三个层次,其中,root 是根节点,表示概念树的顶层概念;node 是枝干节点,表示概念树的中间层概念,中间层概念可不止一层;leaf是叶子节点,表示概念树的底层概念。root 根节点通过四个属性字段加以描述,即uri,url,introduction,name。其中,uri 是顶层概念的唯一标识;url 是通过顶层概念可以访问到的内容的网址;introduction是顶层概念的解释性内容说明;name 是根节点名称。node 枝干节点通过五个属性字段加以描述,即 uri,url,introduction,order,name。其中,uri 是中间层概念的唯一标识;ur
15、l 是通过中间层概念可以访问到的内容的网址;introduction 是中间层概念的解释性内容说明;order 是中间层概念对应内容的显示顺序;name 是枝干节点名称。leaf 叶子节点通过五个属性字段加以描述,即 uri,url,introduction,order,name。其中,uri是底层概念的唯一标识;url 是通过底层概念可以访问到的内容的网址;introduction是底层概念解释性的内容说明;order 是底层概念对应内容的显示顺序;name 是叶子节点名称。概念树唯一标示符详见TR-REC-017 资源唯一标识符规范相关规定。名师资料总结-精品资料欢迎下载-名师精心整理-第
16、 12 页,共 20 页 -11 响应格式示例:化合物结构 名称 基本性质 cas登录号 6.6.2 其他接口6.6.2.1 缺省参数接口接口说明:获取系统基本信息接口,包括接口版本号,开发语言,实现服务名称,编码方式,建库单位信息(联系人,电话,邮件等)等信息请求参数说明:根据服务注册地址访问,无任何参数调用示例:名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 20 页 -13 直接访问服务注册地址http:/url/service 响应格式说明:目前实现的接口版本 开发语言(如 java,php,VDB 等)实现的服务,以,号分隔 服务启动时间 联系人姓名 联系人电话 联系
17、人电子邮件 响应格式示例:1.0 VisualDB 1.3 usrGetUser,sysDatabaseStatistic,dhGetIndexes 2009-01-01 12:27:08 接口联系人姓名 (010)8123* 6.6.6.2 sysDatabaseStatistic 接口说明:数据库统计接口,获取每个数据集的DBMS 的名称,版本号,数据量等信息。请求参数说明:名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 20 页 -14 verb:sysDatabaseStatistic调用示例:http:/url/service?verb=sysDatabaseStat
18、istic 响应格式说明:数据库管理系统名称(如mysql,oracle,sqlserver等)数据库版本号 最后修改时间 数据集唯一标识 数据量(字节数)数据集包含的文件数量 数据集包含的文件总大小(字节)响应格式示例:MYSQL 5.1.5 2008-01-01 12:30:09 cn.csdb.gibbs 272629760 26 456785400 名师资料总结-精品资料欢迎下载-名师精心整理-第 16 页,共 20 页 -15 6.6.6.3 sysGetEntityList 接口说明:根据数据库唯一标识获得数据表的信息(包括表名,记录数)请求参数说明:verb:sysGetEnti
19、tyListuri:数据库唯一标识调用示例:http:/url/service?verb=sysGetEntityList&uri=cn.csdb.plants.002 响应格式说明:表名 记录数 最后修改时间 响应格式示例:cn.csdb.plants.002.tablename 26789 2009-01-01 15:28:37 6.6.6.4 cmsGetNews 接口说明:名师资料总结-精品资料欢迎下载-名师精心整理-第 17 页,共 20 页 -16 新闻收割接口请求参数说明:verb:cmsGetNewsstartDate:获取新闻起始日期endDate:获取新闻结束日期调用示例:
20、http:/url/service?verb=cmsGetNews&startDate=2009-01-01&endDate=2009-02-05 响应格式说明:新闻标题 显示图片的 URL 来源 更新时间 访问地址 响应格式示例:主题数据库建设与数据网格技术研讨会成功举行 2009-09-02 10:20:37 http:/ 名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 20 页 -17 6.6.6.5 sysStatus 接口说明:系统服务状态监控接口请求参数说明:verb:sysStatus 调用示例:http:/url/service?verb=sysStatus 响
21、应格式说明:In service,Out service 响应格式示例:200 名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 20 页 -18 附录 A(资料性附录)OpenURL 参考地址:http:/en.wikipedia.org/wiki/OpenURL 语法格式:OpenURL:=BASE-URL?QUERY BASE-URL:基础 URL,服务提供方的URL 地址QUERY:查询,包含 ORIGIN-DESCRIPTION(参数名称),OBJECT-DESCRIPTION(参数值)两部分。名师资料总结-精品资料欢迎下载-名师精心整理-第 20 页,共 20 页 -