基于API网关的API验证和API文档生成方法及系统技术方案

技术编号:33289430 阅读:27 留言:0更新日期:2022-05-01 00:05
本发明专利技术公开了一种基于API网关的API验证和API文档生成方法及系统,属于计算机网络API网关技术领域,本发明专利技术要解决的技术问题为如何进行API标识的验证和API文档的撰写,减轻开发人员的学习负担,采用的技术方案为:该方法是将上游服务接入网关时,对接入网关API基于开放API的标准进行API规范性校验;并提供对接入网关的表示状态转移应用程序编程接口自动进行基于swagger规范的API资源文档生成;对于每个接入网关的上游服务,通过Restful API的校验工具自动对录入API进行分析,再使用相关方法查找是否符合标准;检查后,将向用户API录入的相关信息。的相关信息。的相关信息。

【技术实现步骤摘要】
基于API网关的API验证和API文档生成方法及系统


[0001]本专利技术涉及计算机网络API网关
,具体地说是一种基于API网关的API验证和API文档生成方法及系统。

技术介绍

[0002]网关是一个服务器,为微服务架构中的一个基础组件,是整个系统的一个统一入口。封装了系统内部架构,为每个客户端提供一个定制的API。它可能还具有其它职责,如身份验证、监控、负载均衡、缓存、请求分片与管理、静态响应处理。
[0003]Restful API基于表示状态传输(REST)技术。在web服务开发中使用的一种架构风格和应用程序。REST之所以受欢迎,是因为它的简单性,以及它基于现有的系统和HTTP的特性来实现其目标。REST是基于web技术构建的,允许用它构建的系统表现出松散耦合、良好的可伸缩性,并利用大量可用的工具来构建它。应用程序编程接口是允许两个软件程序相互通信的代码。API规范确定了开发人员编写从操作系统或其他应用程序请求服务的程序的正确方式。
[0004]因为REST是一种架构风格,所以程序开发人员可以获得很大的灵活性。因此,没有经验的团队在没有指导的情况下创建Restful API,最终往往会遇到许多问题。
[0005]Swagger是一种Rest API的简单但强大的表示方式,标准的,语言无关,这种表示方式不但人可读,而且机器可读。可以作为Rest API的交互式文档,也可以作为Rest API的形式化接口描述,生成客户端和服务端的代码。是一种优秀的API文档格式,便于程序开发人员阅读理解。
[0006]因为REST是一种架构风格,所以程序开发人员可以获得很大的灵活性。因此,没有经验的团队在没有指导的情况下创建Restful API,最终往往会遇到许多问题。另外,对于产品服务创建的API往往需要一份API文档来对API进行管理,但是各产品编写的文档风格各异,若要求按照swagger规范进行编写又需要程序开发人员去学习相关技术。
[0007]故如何进行API标识的验证和API文档的撰写,减轻开发人员的学习负担是目前亟待解决的技术问题。

技术实现思路

[0008]本专利技术的技术任务是提供一种基于API网关的API验证和API文档生成方法及系统,来解决如何进行API标识的验证和API文档的撰写,减轻开发人员的学习负担的问题。
[0009]本专利技术的技术任务是按以下方式实现的,一种基于API网关的API验证和API文档生成方法,该方法是将上游服务接入网关时,对接入网关API基于开放API的标准进行API规范性校验;并提供对接入网关的表示状态转移应用程序编程接口(Restful API)自动进行基于swagger规范的API资源文档生成;对于每个接入网关的上游服务,通过Restful API的校验工具自动对录入API进行分析,再使用相关方法查找是否符合标准;检查后,将向用户API录入的相关信息。
[0010]作为优选,该方法具体如下:
[0011]S101、将需要通过API网关暴露的对外接口录入网关,通过网关实现对外暴露接口到上游服务的流量的转发;
[0012]S102、对于用户录入API网关的API,Restful API的校验工具会根据API规范对录入API的host、路径、参数、响应信息要求、请求模型及安全性进行别;并对不同类型的API进行内容解析,转换成API校验文件;
[0013]S103、Restful API的校验工具中swagger模板处理器识别生成的API校验文档,根据Restful API的校验工具中的规范对API的合规性进行验证;
[0014]S104、在Restful API的校验工具中,对swagger模板处理器验证中产生的非法信息进行错误信息记录;完成校验后,在UI界面通过抛出信息的方式将检验产生的结果信息展示给API录入用户;
[0015]S105、用户进行API格式优化:用户获取检验结果信息,当存在API检验异常信息时,用户根据错误信息对录入API网关的API进行优化并进行二次校验;当用户API已经成功录入网关,用户在控制台导出录入API的接口文档;
[0016]S106、swagger模板处理器根据swagger规范对录入的API进行自动匹配,生成接口文档。
[0017]更优地,录入API网关的API通过基于swagger的API规范和RESTful API标准对其合法性进行校验,并将验证结果进行收集整理,生成一份检测报告,并通过API响应消息的形式反馈给录入人员。
[0018]更优地,所述swagger模板处理器用于对录入的API进行智能识别以生成符合swagger规范的API接口文档。
[0019]一种基于API网关的API验证和API文档生成系统,该系统包括,
[0020]录入模块,用于用户操作API网关进行API录入,对于每个录入的API,对其host、路径、参数、请求模型和响应模型进行标识;
[0021]校验模块,用于根据资源类型定义元文件识别API中字符的有效性,通过Restful API的校验工具验证API的合法性,并生成验证的响应反馈给用户;
[0022]操作模块,用于对合法API,基于可用的Restful API的校验工具中的swagger模板处理器,应用与元数据相对应的超文本标记语言操作;
[0023]转换模块,用于将录入的API转换为符合Swagger规范的模式,遍历每个可用的标识,转换成Swagger模式对应的Json文件供用户下载。
[0024]作为优选,Restful API的校验工具用于对录入API网关的API通过基于swagger的API规范和RESTful API标准对其合法性进行校验,并将验证结果进行收集整理,生成一份检测报告,并通过API响应消息的形式反馈给录入人员。
[0025]更优地,API响应消息中包括对该次录入API网关的API的格式正确性和字符有效性检验结果以及具体出现问题的标识信息。
[0026]更优地,对于合法API,需要标识的属性包括标识属性是否已弃用、识别属性是否复杂、识别是否需要该属性、识别属性是否具有规范值以及更新Swagger定义中的属性定义;
[0027]其中,标识的属性添加到存储文件并准备Swagger JSON;
[0028]验证和确认Swagger JSON的合法性后,提供用户下载API文档。
[0029]一种电子设备,包括:存储器和至少一个处理器;
[0030]其中,所述存储器上存储有计算机程序;
[0031]所述至少一个处理器执行所述存储器存储的计算机程序,使得所述至少一个处理器执行如上述的基于API网关的API验证和API文档生成方法。
[0032]一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序可被处理器执行以实现如上述的基于API网关的API验证和API文档生成方法本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于API网关的API验证和API文档生成方法,其特征在于,该方法是将上游服务接入网关时,对接入网关API基于开放API的标准进行API规范性校验;并提供对接入网关的表示状态转移应用程序编程接口自动进行基于swagger规范的API资源文档生成;对于每个接入网关的上游服务,通过Restful API的校验工具自动对录入API进行分析,再使用相关方法查找是否符合标准;检查后,将向用户API录入的相关信息。2.根据权利要求1所述的基于API网关的API验证和API文档生成方法,其特征在于,该方法具体如下:S101、将需要通过API网关暴露的对外接口录入网关,通过网关实现对外暴露接口到上游服务的流量的转发;S102、对于用户录入API网关的API,Restful API的校验工具会根据API规范对录入API的host、路径、参数、响应信息要求、请求模型及安全性进行别;并对不同类型的API进行内容解析,转换成API校验文件;S103、Restful API的校验工具中swagger模板处理器识别生成的API校验文档,根据Restful API的校验工具中的规范对API的合规性进行验证;S104、在Restful API的校验工具中,对swagger模板处理器验证中产生的非法信息进行错误信息记录;完成校验后,在UI界面通过抛出信息的方式将检验产生的结果信息展示给API录入用户;S105、用户进行API格式优化:用户获取检验结果信息,当存在API检验异常信息时,用户根据错误信息对录入API网关的API进行优化并进行二次校验;当用户API已经成功录入网关,用户在控制台导出录入API的接口文档;S106、swagger模板处理器根据swagger规范对录入的API进行自动匹配,生成接口文档。3.根据权利要求1或2所述的基于API网关的API验证和API文档生成方法,其特征在于,录入API网关的API通过基于swagger的API规范和RESTful API标准对其合法性进行校验,并将验证结果进行收集整理,生成一份检测报告,并通过API响应消息的形式反馈给录入人员。4.根据权利要求3所述的基于API网关的API验证和API文档生成方法,其特征在于,所述swagger模板处理器用于对录入的API进行智能识别以生成符合swagger规范的API接口文档。5...

【专利技术属性】
技术研发人员:郑志伟袁绍帅
申请(专利权)人:山东浪潮科学研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1