CN112988872A - 一种接口文档管理方法、装置、存储介质及电子设备 - Google Patents
一种接口文档管理方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN112988872A CN112988872A CN202110349188.0A CN202110349188A CN112988872A CN 112988872 A CN112988872 A CN 112988872A CN 202110349188 A CN202110349188 A CN 202110349188A CN 112988872 A CN112988872 A CN 112988872A
- Authority
- CN
- China
- Prior art keywords
- data
- interface
- service
- interface document
- end address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 81
- 238000012545 processing Methods 0.000 claims abstract description 34
- 238000013507 mapping Methods 0.000 claims abstract description 16
- 238000000034 method Methods 0.000 claims description 48
- 238000004590 computer program Methods 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 9
- 238000004806 packaging method and process Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 101001094649 Homo sapiens Popeye domain-containing protein 3 Proteins 0.000 description 1
- 101000608234 Homo sapiens Pyrin domain-containing protein 5 Proteins 0.000 description 1
- 101000578693 Homo sapiens Target of rapamycin complex subunit LST8 Proteins 0.000 description 1
- 102100027802 Target of rapamycin complex subunit LST8 Human genes 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2291—User-Defined Types; Storage management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种接口文档管理方法,所述方法包括:获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据;基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档;将所述接口文档保存到数据库中。采用本申请实施例,可以自动获取接口文档,实现对接口文档的同一管理,并保证接口文档的完整性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种接口文档管理方法、装置、存储介质及电子设备。
背景技术
在当今互联网时代,信息系统支撑着线上服务的运转,信息系统内部的前端服务和后台服务之间以及信息系统之间的交互,都是通过应用程序接口(ApplicationProgrammingInterface,API)进行通信的,因此互联网公司服务器开放给客户端的接口非常多。然而数量繁杂的接口数据往往分散在各个支持接口文档存储服务的互联网平台上,并且接口文档的编写格式也各不相同,同时还面临接口文档不完整的问题。
发明内容
本申请实施例提供了一种接口文档管理方法、装置、存储介质及电子设备,可以自动获取接口文档,实现对接口文档的同一管理,并保证接口文档的完整性。所述技术方案如下:
第一方面,本申请实施例提供了一种接口文档管理方法,所述方法包括:
获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据;
基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档;
将所述接口文档保存到数据库中。
第二方面,本申请实施例提供了一种接口文档管理装置,所述装置包括:
获取接口数据模块,用于获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据;
生成接口文档模块,用于基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档;
保存接口文档模块,用于将所述接口文档保存到数据库中。
第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。
第四方面,本申请实施例提供一种电子设备,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。
本申请一些实施例提供的技术方案带来的有益效果至少包括:
通过自动获取业务数据和后端接口数据,以及自动获取前端地址数据和前端接口数据,在上述四种数据之间添加关联以生成接口文档,并将接口文档保存在数据库中,以实现对接口数据的完善和统一保存;提供给用户一个统一接口访问数据库中包括所有接口数据的接口文档,减少用户在各大平台上自行查找接口数据的时间,以及避免用户对单一接口数据进行封装的繁琐操作。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种接口文档管理方法的系统架构图;
图2是本申请实施例提供的一种接口文档管理方法的流程示意图;
图3是本申请实施例提供的一种的接口文档的结构示意图;
图4是本申请实施例提供的一种接口文档的界面示意图;
图5是本申请实施例提供的另一种接口文档管理方法的流程示意图;
图6是本申请实施例提供的一种前端接口数据进行结构化处理的流程示意图;
图7是本申请实施例提供的一种接口文档管理装置的结构示意图;
图8是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本申请的描述中,需要说明的是,除非另有明确的规定和限定,“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
下面结合具体的实施例对本申请进行详细说明。
如图1所示,为本申请实施例提供的一种接口文档管理的系统架构示意图,所示系统架构示意图包括:可以获取多个具有对应关系的业务服务数据和后端接口数据的服务平台101,例如服务平台101包括swagger、WiKi或Yapi,对应的提供swagger服务、WiKi服务或Yapi服务,可以获取多个具有对应关系的前端地址数据和前端接口数据的服务平台102,例如阿里云日志或页面抓取服务器,对应提供的日志服务102或页面抓取服务,接口文档管理装置103和访问接口文档管理装置的数据库的客户端104。
业务服务(Service)数据,可以理解为由某个服务器或服务器集群提供的服务的具体内容或表现形式等数据。例如,业务服务(Service)为搜索服务或提供新闻服务,业务服务数据为搜索服务对应的数据或提供新闻服务对应的数据。
后端接口(Application Programming Interface,API)数据,可以理解为实现业务服务(Service)的入口数据,后端接口API数据与业务服务(Service)数据之间具有对应关系。换而言之,客户端通过后端接口与业务服务的逻辑层进行通信,获取业务服务提供的服务内容。例如,客户端通过搜索服务对应的后端接口请求搜索服务。
接口数据包括但不限于,接口的方法信息、接口的参数名信息、接口的参数描述信息、接口的参数示例信息、接口的路径信息、或者与接口有关的任何数据。上述接口数据包括前端接口数据和后端接口数据。
可以理解的是,业务服务数据和后端接口数据包括JS对象简谱(Java ScriptObject Notation,JSON)、标记语言(YAML Ain't a Markup Language,YAML)或可扩展标记语言(eXtensible Markup Language,XML)等任意一种格式的数据。
可以获取多个具有对应关系的业务服务数据和后端接口数据的服务平台101,下述称为第一服务平台101,例如包括swagger、WiKi或Yapi,swagger,swagger指基于一个规范和完整的Spring框架生成后端接口数据的Web服务平台,wiki指一种在网络上开放且可供多人协同创作的超文本系统,Yapi指一种功能强大的接口管理平台,换而言之,后端开发人员在业务服务的开发过程中会通过各式工具生成对应的后端接口数据,并将后端接口数据保存在各个服务平台上;接口文档管理装置103通过访问各个服务平台获取具有对应关系的业务服务数据和后端接口数据。
在一个实施例中,接口文档管理装置103允许用户通过客户端直接将具有对应关系的业务服务数据和后端接口数据写入到数据库中。可以理解的是,上述服务平台仅为举例,本申请不对接口文档管理装置103获取具有对应关系的业务服务数据和后端接口数据的方法作限定。
前端地址数据,可以理解为基于互联网域名规则编写的与服务器的IP对应的地址数据,具有表示服务器提供的业务服务、性质和所在地区等功能。例如,前端地址数据基于统一资源定位符(Uniform Resource Locator,URL)编写规则,为https://www.baidu.com/index.html,客户端通过访问该前端地址数据时,可以基于域名系统(Domain NameSystem,DNS)自动访问对应的服务器,从而使用该服务器提供的业务服务。可以理解的是,前端地址数据包括URL或域名等格式的数据。
前端接口数据,可以理解为基于前端地址数据和超文本传输协议(HyperTextTransfer Protocol,HTTP)编写的网页(web)接口数据,前端接口数据和前端地址数据具有对应关系。
可以获取多个具有对应关系的前端地址数据和前端接口数据的服务平台102,下述称为第二服务平台102,例如包括阿里云日志服务平台或页面抓取工具,阿里云日志提供日志服务(Log Service),以供用户通过日志服务获取海量前端地址数据以及对应的前端接口数据,页面抓取工具指可以在页面抓取前端地址数据以及前端接口数据的工具。换而言之,接口文档管理装置103可以通过访问阿里云日志服务平台,通过阿里云日志服务平台提供的日志服务(Log Service)获取前端地址数据以及对应的前端接口数据,也可以通过页面抓取工具在任意网页上抓取前端地址数据以及对应的前端接口数据。
在一个实施例中,接口文档管理装置103允许用户通过客户端直接将前端地址数据以及对应的前端接口数据写入到数据库中。可以理解的是,上述服务平台仅为举例,本申请不对接口文档管理装置103获取前端地址数据以及对应的前端接口数据的方法作限定。
接口文档管理装置103,用于执行接口文档管理方法,该接口文档管理装置103可以通过软件、硬件或者两者的结合实现成为装置的全部或一部分,接口文档管理装置103上可以通过一个服务器或服务器集群实现。本申请不对接口文档管理装置103的设置位置或实现方式作任何限制。接口文档管理装置103的具体介绍参见图7所示实施例,此处不作赘述。
访问接口文档管理装置的数据库的客户端104,可以理解为终端设备(terminaldevice),包括但不限于移动台(Mobile Station,MS)、移动终端设备(Mobile Terminal)、移动电话(Mobile Telephone)、手机(handset)及便携设备(portable equipment)等,该终端设备可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网进行通信,例如,终端设备可以是移动电话(或称为“蜂窝”电话)、具有无线通信功能的计算机等,终端设备还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置或设备,例如:如图1所示,终端设备包括智能手机、电脑、平板电脑等电子设备,具有存储数据的功能。以及客户端104可以通过互联网服务与接口文档管理装置103建立访问请求,访问接口文档管理装置103的数据库中的数据。可以理解的是,发起访问请求的客户端101包括一个或多个,图1中仅为示例。
本申请通过自动获取业务数据和后端接口数据,以及自动获取前端地址数据和前端接口数据,在上述四种数据之间添加关联以生成接口文档,并将接口文档保存在数据库中,以实现对接口数据的完善和统一保存;提供给用户一个统一接口访问数据库中包括所有接口数据的接口文档,减少用户在各大平台上自行查找接口数据的时间,以及避免用户对单一接口数据进行封装的繁琐操作。
在一个实施例中,如图2所示,特提出了一种接口文档管理方法的流程示意图,该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的接口文档管理装置上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。
具体的,该接口文档管理方法包括:
S101、获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据。
在一个实施例中,访问接口文档管理装置103通过swagger服务平台获取多个具有对应关系的业务服务数据和后端接口数据。具体而言,基于预设周期向swagger服务平台发送第一访问请求;swagger服务平台基于第一访问请求指向的第一目标资源数据在swagger服务器中获取第一目标资源数据,即具有对应关系的业务服务数据和后端接口数据,将该第一目标资源数据发送给访问接口文档管理装置103。
在一个实施例中,访问接口文档管理装置103通过阿里云日志服务平台获取多个具有对应关系的前端地址数据和前端接口数据。具体而言,基于预设周期向阿里云日志服务平台发送第二访问请求;阿里云日志服务平台基于第二访问请求指向的第二目标资源数据在阿里云服务器中获取第二目标资源数据,即具有对应关系的前端地址数据和前端接口数据,将该第二目标资源数据发送给访问接口文档管理装置103。
对应关系可以理解为具有对应关系的业务服务数据和后端接口数据携带有同一条注释信息,其中注释信息中存在各种特殊标记,具有对应关系的前端地址数据和前端接口数据携带有同一条注释信息,该注释信息可以基于字符串表示。换而言之,访问接口文档管理装置103通过携带的注释信息确定业务服务数据和后端接口数据之间的对应关系,以及前端地址数据和前端接口数据之间的对应关系。
S102、基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的前端地址数据和业务服务数据进行关联处理,生成包括业务服务数据、后端接口数据、前端地址数据和前端接口数据的接口文档。
在一个实施例中,接口文档管理装置103通过路由表(routing table)获取预设的前端地址数据和预设的业务服务数据的映射关系,路由表(routing table)或称路由择域信息库(RIB,Routing Information Base),是一个存储在路由器或者联网计算机中的电子表格(文件)或类数据库。
路由表(routing table)中包括预设的前端地址数据和预设的业务服务数据的映射关系,举例来说,前端地址数据为https://www.baidu.com/index.html,基于路由表可以找到该前段地址数据对应的业务服务数据包括搜索服务数据和查看新闻服务数据;又或者,业务服务数据为搜索服务数据,基于路由表可以找到该业务服务数据对应的前端地址数据为https://www.baidu.com/index.html和https://www.sougou.com/index.html。
在一个实施例中,接口文档管理装置103获取的前端地址数据为非路由表中的指定格式时,通过转换服务将前端地址数据的格式转换为指定格式。例如,路由表中预设的前端地址数据的指定格式为URL,而获取的前端地址数据的格式为域名,接口文档管理装置103通过转换服务将域名转换为URL。
如图3所示,为本申请实施例提供的一种接口文档的结构示意图,包括:第一前端地址数据301A,以及与第一前端地址数据301A对应的第一前端接口数据301B,第一业务服务数据302A,以及与第一业务服务数据302A对应的第一后端接口数据302B,第二业务服务数据303A,以及与第二业务服务数据303A对应的第二后端接口数据303B,第二前端接口数据304B和第二前端地址数据304A。
对业务服务数据和前端地址数据进行关联处理,可以理解为将具有对应关系的业务服务数据和前端地址数据添加关联,以使用户在检索目标数据时接口文档管理装置103将具有对应关系的数据进行展示。例如,接口文档管理装置103接收到来自用户的搜索请求,该搜索请求的内容为前端地址数据:https://www.baidu.com/index.html;接口文档管理装置103将该前端地址数据对应的前端接口数据,以及该前段地址数据对应的业务服务数据包括搜索服务数据和查看新闻服务数据,以及该业务服务数据对应的后端接口数据通过显示装置进行展示。
基于图3所示实施例,接口文档管理装置103得到包括具有对应关系的前端地址数据、前端接口数据、业务服务数据和后端接口数据的接口文档的步骤为:
接口文档管理装置103通过携带的标识确定第一业务服务数据302A和第一后端接口数据302B之间的对应关系,以及第二业务服务数据303A和第二后端接口数据303B之间的对应关系,以及第一前端地址数据301A和第一前端接口数据301B之间的对应关系,以及第二前端地址数据304A和第二前端接口数据304B之间的对应关系,对具有对应关系的数据进行关联处理。
接口文档管理装置103通过路由表中包括的预设的前端地址数据和预设的业务服务数据的映射关系,确定第一前端地址数据301A分别对应的第一业务服务数据302A和第二业务服务数据303A,第二前端地址数据304A对应的第二业务服务数据303A,将具有对应关系的数据进行关联处理。
本申请一些实施例提供的技术方案带来的有益效果至少包括:将具有对应关系的前端地址数据和业务服务数据进行关联处理,从而将与前端地址数据对应的前端接口数据、与业务服务数据对应的后端接口数据进行关联处理,从而支持用户从业务服务维度和前端地址维度两个维度进行搜索,提高接口文档的使用便捷性;通过映射关系建立业务服务数据和前端地址数据之间的关联,处理过程简单,占用逻辑资源少。
S103、将接口文档保存在数据库中。
将接口文档保存在接口文档管理装置103的数据库中进行存储。
在一个实施例中,接口文档管理装置103基于至少一个信息维度将所述数据库封装为至少一个访问接口,访问接口用于接收访问请求以根据访问请求访问接口文档。信息维度可以理解为包括业务服务维度和前端地址服务等多个维度,以及一个访问接口对应基于一个信息维度生成接口文档的服务。例如,第一访问接口对应生成前端地址维度的接口文档的服务,当用户通过客户端104访问第一访问接口时,获取基于前端地址维度生成的接口文档。
如图4所示,为本申请实施例提供的一种基于前端地址维度的接口文档的界面示意图。用户通过客户端向接口文档管理装置103发送访问请求,访问请求包括获取前端地址数据:Math-parent对应的数据;接口文档管理装置103为访问请求分配生成基于前端地址维度的接口文档的访问接口,从而基于访问请求展示如图4所示的接口文档界面,前端地址数据Math-parent对应的多个业务服务数据,包括:发送手机号变更、修改手机号和小程序注册,以及多个业务服务数据分别对应的后端接口数据。可以理解的是,接口文档管理装置103也可以将接口文档发送给客户端,以示客户端通过客户端的显示界面将接口文档进行展示。
在图4所示的前端地址维度的接口文档中,后端接口数据以JSON格式编写,业务服务数据以对应的服务内容编写。其中,JSON是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据,简洁和清晰的层次结构使得JSON成为理想的数据交换语言,易于开发人员阅读和编写,同时也易于机器解析和生成,并能够有效地提升网络传输效率。本申请不对后端接口数据、业务服务数据的编写形式或表现形式作任何限定。
生成基于业务服务维度的接口文档参见上述生成基于前端地址维度的接口文档,此处不再赘述。
在另一个实施例中,基于至少信息维度将数据库封装为至少一个访问接口,该访问接口还包括用户直接通过接口文档进行接口测试的访问接口。具体而言,用户通过客户端发起访问请求后,通过nginx解决跨域和认证的问题,将访问请求并返回展示接口文档的网页,从而使得用户能够通过网页上的接口文档页面直接进行接口测试。nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。
本申请通过自动获取业务数据和后端接口数据,以及自动获取前端地址数据和前端接口数据,在上述四种数据之间添加关联以生成接口文档,并将接口文档保存在数据库中,以实现对接口数据的完善和统一保存;提供给用户一个统一接口访问数据库中包括所有接口数据的接口文档,减少用户在各大平台上自行查找接口数据的时间,以及避免用户对单一接口数据进行封装的繁琐操作。
如图5所示,为本申请实施例提供的另一种接口文档管理方法的流程示意图,该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的接口文档管理装置上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。
具体的,该接口文档管理方法包括:
S501、获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据。
接口文档管理装置获取获多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据,具体步骤参考图1和图2所示的步骤S101,此处不再赘述。
S502、基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的前端地址数据和业务服务数据进行关联处理,生成包括业务服务数据、后端接口数据、前端地址数据和前端接口数据的接口文档。
接口文档管理装置基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的前端地址数据和业务服务数据进行关联处理,生成包括业务服务数据、后端接口数据、前端地址数据和前端接口数据的接口文档。具体步骤参见上述图3所示和图2所示的步骤S102,此处不再赘述。
S503、将接口文档中包括的前端接口数据和后端接口数据分别进行结构化处理,得到前端接口数据对应的第一结构化数据以及后端接口数据对应的第二结构化数据。
在具有对应关系的业务服务数据、后端接口数据、前端地址数据和前端接口数据之间添加关联后,进一步对前端接口数据和后端接口数据进行处理。
在一个实施例中,如图6所示,为本申请实施例提供的一种前端接口数据进行结构化处理的流程示意图。接口文档管理装置滤除前端接口数据601中的前端非目标数据602,得到前端目标数据603;将前端目标数据603进行分割,得到前端接口数据对应的第一结构化数据604。
具体而言,对前端接口数据601进行结构化处理的步骤为:基于前端接口数据的注解信息,分析前端接口数据601中的关键信息所在的层级,其中关键信息是指URL、Header、Params、Host等对象的信息;在确认层级之后,在该层级的name字段中获取关键信息对应的具体内容,将非name字段的内容进行滤除,例如,确定前端接口数据601的第一层级为关键信息URL对应的层级,获取该层级中name字段的具体内容,将其他字段进行删除,得到前端目标数据603;基于URL、Header、Params、Host等关键信息将获取的目标前端数据603进行分割,得到第一结构化数据604。可以理解的是,还可以基于method、description、response等其他关键信息对前端接口数据601进行滤除和分割,本申请实施例仅为其中一种可能的实施方法。
对后端接口数据进行结构化处理的步骤参见对前端接口数据601处理的步骤,此处不再赘述。
S504、基于第一结构化数据和第二结构化数据,生成结构化接口文档。
基于前端接口数据得到第一结构化数据,基于后端接口数据得到第二结构化数据,生成结构化接口文档。
在一个实施例中,本申请基于Swagger规范利用第一结构化数据和第二结构化数据生成对应的结构化接口文档。具体而言,Swagger规范(Swagger Specification)规定了如何对基于接口数据得到的结构化数据进行正确描述。Swagger规范本身与编程语言无关,其支持两种语法风格:YAML语法和JSON语法,这两种语法风格可以相互转换,都可以用来对第一结构化数据和第二结构化数据进行准确描述,便于用户和机器阅读。目前,Swagger的规范主要有两种:Swagger 2.0和OpenAPI 3.0。在Swagger中,用于描述接口信息的文档被称作Swagger文档,Swagger文档指的是符合Swagger规范的文件,用于对第一结构化数据和第二结构化数据进行完整地描述。Swagger文档的类型有两种:yaml文件和json文件。yaml文件用的是YAML语法风格;json文件用的是JSON语法风格,这两种文件都可以用来描述第一结构化数据和第二结构化数据,且可以相互转换。通常来说,Swagger文档就是接口文档,但Swagger文档是用特定的语法来编写的。本实施例中,在得到第一结构化数据和第二结构化数据之后,参照Swagger规范,利用第一结构化数据和第二结构化数据生成YAML格式或JSON格式的结构化接口文档。采用本申请实施例,结构化接口文档更加美观,提高用户阅读以及理解结构化接口文档的效率,以及提高对前端接口数据和后端接口数据的描述的准确性。
S505、将结构化接口文档保存在数据库中。
将结构化接口文档保存在数据库中,基于至少一个信息维度将数据库封装为至少一个访问接口,访问接口用于接收访问请求以根据访问请求访问结构化接口文档。步骤S505的具体工作步骤参见上述图2所示的步骤S103,此处不再赘述。
在一个实施例中,本申请的接口文档管理装置基于预设周期对接口文档更新。由于环境变化,前端接口数据、后端接口数据、前端地址数据和业务服务数据的具体内容会发生改变,例如内测版本改为正式上线版本,前端地址数据和前端接口数据也会相应变化。具体而言,接口文档管理装置基于预设周期获取前端接口数据和前端地址数据,以及获取后端接口数据和业务服务数据,基于上述步骤再次生成接口文档并保存在数据库中。预设周期可以是24小时或一周,通过客户端发送的修改指令获取,或用户之间通过接口文档管理装置上设置的控件输入修改指令。采用本申请实施例,对接口文档的维护性和时效性较好,以及提高接口文档的准确性和可靠性。
本申请通过自动获取业务数据和后端接口数据,以及自动获取前端地址数据和前端接口数据,在上述四种数据之间添加关联以生成接口文档,并将接口文档保存在数据库中,以实现对接口数据的完善和统一保存;提供给用户一个统一接口访问数据库中包括所有接口数据的接口文档,减少用户在各大平台上自行查找接口数据的时间,以及避免用户对单一接口数据进行封装的繁琐操作。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参见图7,其示出了本申请一个示例性实施例提供的接口文档管理装置的结构示意图。该接口文档管理装置可以通过软件、硬件或者两者的结合实现成为装置的全部或一部分。可以理解的是,该接口文档管理装置和图1所示的接口文档管理装置103为同一装置。该接口文档管理装置包括获取接口数据模块701、生成接口文档模块702和保存接口文档模块703。
获取接口数据模块701,用于获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据;
生成接口文档模块702,用于基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档;
保存接口文档模块703,用于将所述接口文档保存到数据库中。
可选的,该接口文档管理装置还包括:
封装模块,用于基于至少一个信息维度将所述数据库封装为至少一个访问接口,所述访问接口用于接收访问请求以根据所述访问请求访问所述接口文档。
可选的,生成接口文档模块702包括:
结构化处理单元,用于将所述接口文档中包括的所述前端接口数据和所述后端接口数据分别进行结构化处理,得到所述前端接口数据对应的第一结构化数据以及所述后端接口数据对应的第二结构化数据;
结构化文档单元,用于基于所述第一结构化数据和所述第二结构化数据,生成结构化接口文档;
保存接口文档模块703,包括:
结构化保存单元,用于将所述结构化接口文档保存在所述数据库中。
可选的,结构化处理单元包括:
第一滤除子单元,用于滤除所述前端接口数据中的前端非目标数据,得到前端目标数据;
第一结构化子单元,用于将所述前端目标数据进行分割,得到所述前端接口数据对应的第一结构化数据;
第二滤除子单元,用于滤除所述后端接口数据中的后端非目标数据,得到后端目标数据;
第二结构化子单元,用于将所述后端目标数据进行分割,得到所述后端接口数据对应的第二结构化数据。
可选的,获取接口数据模块701还用于通过swagger服务和/或WiKi服务和/或Yapi服务,获取多个具有对应关系的所述业务服务数据和所述后端接口数据。
可选的,获取接口数据模块701还用于通过日志服务和/或页面抓取服务,获取多个具有对应关系的所述前端地址数据和所述前端接口数据。
可选的,接口文档管理装置还包括:
更新模块,用于基于预设周期对接口文档更新。
需要说明的是,上述实施例提供的接口文档管理装置在执行接口文档管理方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的接口文档管理装置与接口文档管理方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请通过自动获取业务数据和后端接口数据,以及自动获取前端地址数据和前端接口数据,在上述四种数据之间添加关联以生成接口文档,并将接口文档保存在数据库中,以实现对接口数据的完善和统一保存;提供给用户一个统一接口访问数据库中包括所有接口数据的接口文档,减少用户在各大平台上自行查找接口数据的时间,以及避免用户对单一接口数据进行封装的繁琐操作。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图1-图6所示实施例的所述接口文档管理方法,具体执行过程可以参见图1-图6所示实施例的具体说明,在此不进行赘述。
本申请还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行如上述图1-图6所示实施例的所述接口文档管理方法,具体执行过程可以参见图1-图6所示实施例的具体说明,在此不进行赘述。
请参见图8,为本申请实施例提供了一种电子设备的结构示意图。如图8所示,所述电子设备800可以包括:至少一个处理器801,至少一个网络接口804,用户接口803,存储器805,至少一个通信总线802。
其中,通信总线802用于实现这些组件之间的连接通信。
其中,用户接口803可以包括显示屏(Display)、摄像头(Camera),可选用户接口803还可以包括标准的有线接口、无线接口。
其中,网络接口804可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
其中,处理器801可以包括一个或者多个处理核心。处理器801利用各种借口和线路连接整个服务器800内的各个部分,通过运行或执行存储在存储器805内的指令、程序、代码集或指令集,以及调用存储在存储器805内的数据,执行服务器800的各种功能和处理数据。可选的,处理器801可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(ProgrammableLogic Array,PLA)中的至少一种硬件形式来实现。处理器801可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器801中,单独通过一块芯片进行实现。
其中,存储器805可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器805包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器805可用于存储指令、程序、代码、代码集或指令集。存储器805可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器805可选的还可以是至少一个位于远离前述处理器801的存储装置。如图8所示,作为一种计算机存储介质的存储器805中可以包括操作系统、网络通信模块、用户接口模块以及接口文档管理应用程序。
在图8所示的电子设备800中,用户接口803主要用于为用户提供输入的接口,获取用户输入的数据;而处理器801可以用于调用存储器805中存储的接口文档管理应用程序,并具体执行以下操作:
获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据;
基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档;
将所述接口文档保存到数据库中。
在一个实施例中,处理器801执行所述将所述接口文档保存到数据库中之后,还执行以下步骤:
基于至少一个信息维度将所述数据库封装为至少一个访问接口,所述访问接口用于接收访问请求以根据所述访问请求访问所述接口文档。
在一个实施例中,处理器801执行所述基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档,具体执行以下操作:
将所述接口文档中包括的所述前端接口数据和所述后端接口数据分别进行结构化处理,得到所述前端接口数据对应的第一结构化数据以及所述后端接口数据对应的第二结构化数据;
基于所述第一结构化数据和所述第二结构化数据,生成结构化接口文档;
处理器801所述将所述接口文档保存到数据库中,具体执行以下步骤:
将所述结构化接口文档保存在所述数据库中。
在一个实施例中,处理器801执行所述将所述接口文档中包括的所述前端接口数据和所述后端接口数据分别进行结构化处理,得到所述前端接口数据对应的第一结构化数据以及所述后端接口数据对应的第二结构化数据,具体执行以下步骤:
滤除所述前端接口数据中的前端非目标数据,得到前端目标数据;
将所述前端目标数据进行分割,得到所述前端接口数据对应的第一结构化数据;
滤除所述后端接口数据中的后端非目标数据,得到后端目标数据;
将所述后端目标数据进行分割,得到所述后端接口数据对应的第二结构化数据。
在一个实施例中,处理器801执行所述获取多个具有对应关系的业务服务数据和后端接口数据,具体执行以下步骤:
通过swagger服务和/或WiKi服务和/或Yapi服务,获取多个具有对应关系的所述业务服务数据和所述后端接口数据。
在一个实施例中,处理器801执行所述获取多个具有对应关系的前端地址数据和前端接口数据,具体执行以下步骤:
通过日志服务和/或页面抓取服务,获取多个具有对应关系的所述前端地址数据和所述前端接口数据。
在一个实施例中,处理器801还执行以下步骤:
基于预设周期对接口文档更新。
本申请通过自动获取业务数据和后端接口数据,以及自动获取前端地址数据和前端接口数据,在上述四种数据之间添加关联以生成接口文档,并将接口文档保存在数据库中,以实现对接口数据的完善和统一保存;提供给用户一个统一接口访问数据库中包括所有接口数据的接口文档,减少用户在各大平台上自行查找接口数据的时间,以及避免用户对单一接口数据进行封装的繁琐操作。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (10)
1.一种接口文档管理方法,其特征在于,所述方法包括:
获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据;
基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档;
将所述接口文档保存到数据库中。
2.根据权利要求1所述方法,其特征在于,所述将所述接口文档保存到数据库中之后,还包括:
基于至少一个信息维度将所述数据库封装为至少一个访问接口,所述访问接口用于接收访问请求以根据所述访问请求访问所述接口文档。
3.根据权利要求1所述方法,其特征在于,所述基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档,包括:
将所述接口文档中包括的所述前端接口数据和所述后端接口数据分别进行结构化处理,得到所述前端接口数据对应的第一结构化数据以及所述后端接口数据对应的第二结构化数据;
基于所述第一结构化数据和所述第二结构化数据,生成结构化接口文档;
所述将所述接口文档保存到数据库中,包括:
将所述结构化接口文档保存在所述数据库中。
4.根据权利要求3所述方法,其特征在于,所述将所述接口文档中包括的所述前端接口数据和所述后端接口数据分别进行结构化处理,得到所述前端接口数据对应的第一结构化数据以及所述后端接口数据对应的第二结构化数据,包括:
滤除所述前端接口数据中的前端非目标数据,得到前端目标数据;
将所述前端目标数据进行分割,得到所述前端接口数据对应的第一结构化数据;
滤除所述后端接口数据中的后端非目标数据,得到后端目标数据;
将所述后端目标数据进行分割,得到所述后端接口数据对应的第二结构化数据。
5.根据权利要求1所述方法,其特征在于,所述获取多个具有对应关系的业务服务数据和后端接口数据,包括:
通过swagger服务和/或WiKi服务和/或Yapi服务,获取多个具有对应关系的所述业务服务数据和所述后端接口数据。
6.根据权利要求1所述方法,其特征在于,所述获取多个具有对应关系的前端地址数据和前端接口数据,包括:
通过日志服务和/或页面抓取服务,获取多个具有对应关系的所述前端地址数据和所述前端接口数据。
7.根据权利要求1所述方法,其特征在于,所述方法还包括:
基于预设周期对接口文档更新。
8.一种接口文档管理装置,其特征在于,所述装置包括:
获取接口数据模块,用于获取多个具有对应关系的业务服务数据和后端接口数据,获取多个具有对应关系的前端地址数据和前端接口数据;
生成接口文档模块,用于基于预设的前端地址数据和预设的业务服务数据的映射关系,将具有对应关系的所述前端地址数据和所述业务服务数据进行关联处理,生成包括所述业务服务数据、所述后端接口数据、所述前端地址数据和所述前端接口数据的接口文档;
保存接口文档模块,用于将所述接口文档保存到数据库中。
9.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1~7任意一项的方法步骤。
10.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1~7任意一项的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110349188.0A CN112988872A (zh) | 2021-03-31 | 2021-03-31 | 一种接口文档管理方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110349188.0A CN112988872A (zh) | 2021-03-31 | 2021-03-31 | 一种接口文档管理方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112988872A true CN112988872A (zh) | 2021-06-18 |
Family
ID=76339182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110349188.0A Pending CN112988872A (zh) | 2021-03-31 | 2021-03-31 | 一种接口文档管理方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112988872A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821254A (zh) * | 2021-09-29 | 2021-12-21 | 平安普惠企业管理有限公司 | 接口数据处理方法、装置、存储介质及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110244940A (zh) * | 2019-06-12 | 2019-09-17 | 四川长虹电器股份有限公司 | 优化web应用系统开发的方法及web前端项目结构 |
CN110321154A (zh) * | 2019-06-25 | 2019-10-11 | 北京奇艺世纪科技有限公司 | 一种微服务的接口信息展示方法、装置及电子设备 |
CN111258627A (zh) * | 2020-01-14 | 2020-06-09 | 中国建设银行股份有限公司 | 一种接口文档生成方法和装置 |
US20200274900A1 (en) * | 2019-02-25 | 2020-08-27 | Oracle International Corporation | Automatic API Document Generation From SCIM Metadata |
CN112486460A (zh) * | 2020-11-30 | 2021-03-12 | 携程旅游信息技术(上海)有限公司 | 自动导入接口文档的方法、系统、设备和介质 |
-
2021
- 2021-03-31 CN CN202110349188.0A patent/CN112988872A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200274900A1 (en) * | 2019-02-25 | 2020-08-27 | Oracle International Corporation | Automatic API Document Generation From SCIM Metadata |
CN110244940A (zh) * | 2019-06-12 | 2019-09-17 | 四川长虹电器股份有限公司 | 优化web应用系统开发的方法及web前端项目结构 |
CN110321154A (zh) * | 2019-06-25 | 2019-10-11 | 北京奇艺世纪科技有限公司 | 一种微服务的接口信息展示方法、装置及电子设备 |
CN111258627A (zh) * | 2020-01-14 | 2020-06-09 | 中国建设银行股份有限公司 | 一种接口文档生成方法和装置 |
CN112486460A (zh) * | 2020-11-30 | 2021-03-12 | 携程旅游信息技术(上海)有限公司 | 自动导入接口文档的方法、系统、设备和介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821254A (zh) * | 2021-09-29 | 2021-12-21 | 平安普惠企业管理有限公司 | 接口数据处理方法、装置、存储介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11265378B2 (en) | Cloud storage methods and systems | |
CN110198247B (zh) | 接口测试方法及系统 | |
US8656417B2 (en) | Interface for telecommunication services using uniform resource identifiers | |
CN101946248B (zh) | 提供应用程序接口服务并进行应用程序接口跨界混搭的方法和装置 | |
CN106997298A (zh) | 一种应用资源获取方法及装置 | |
CN108494860A (zh) | Web访问系统、用于客户端的web访问方法和装置 | |
CN111427576B (zh) | 配置应用程序接口的方法、装置、存储介质及终端 | |
CN108228770A (zh) | 一种应用文件来源查询的方法及装置 | |
US20200233878A1 (en) | Card-based information management method and system | |
US20230297767A1 (en) | Document editing method and apparatus, and electronic device | |
CN112507005A (zh) | 一种处理报文的方法和装置 | |
KR100738040B1 (ko) | 개방형 모바일 비즈니스 지원 시스템의 api 제공 방법 | |
US20220374588A1 (en) | View display method and device of form and electronic equipment | |
CN111767229A (zh) | 性能测试方法、装置和设备 | |
CN107368334B (zh) | 一种业务插件交互系统及方法 | |
CN102629194A (zh) | 面向移动终端的新型应用商店转接器 | |
WO2022078397A1 (zh) | 通信的方法、装置、设备及存储介质 | |
CN107977316A (zh) | 一种模拟远程过程调用的方法、客户端及系统 | |
CN112988872A (zh) | 一种接口文档管理方法、装置、存储介质及电子设备 | |
CN104954363A (zh) | 用于生成接口文档的方法和装置 | |
CN114385382A (zh) | 轻应用的访问方法、装置、计算机设备和存储介质 | |
CN111488286B (zh) | 一种Android模块独立开发的方法及装置 | |
CN108011936A (zh) | 用于推送信息的方法和装置 | |
CN102546737A (zh) | 无线互联网门户接入系统及方法 | |
CN112202598B (zh) | 一种日志记录方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |