首页> 中国专利> 一种基于API网关实现在线调试和文档导出的方法

一种基于API网关实现在线调试和文档导出的方法

摘要

本发明公开一种基于API网关实现在线调试和文档导出的方法,涉及API网关技术领域,包括API在线调试和文档导出两个阶段;在API在线调试阶段,通过控制台调试前端页面,并向后端发送调试用到的参数信息,后端校验参数后,进行API的安全认证,并在认证成功后生成签名,进而通过RestTemplate创建API网关的调用请求,将响应返回给控制台的前端页面进行展示;在文档导出阶段,通过控制台的前端页面选择一个调试完成的API,借助Java Markdown Generator工具类将API元数据渲染成markdown格式,随后以文件输出流的形式随响应下载到本地。本发明可以省去使用工具调试API填写参数以及生成签名所需要的工作,提高接口调试效率和文档维护成本。

著录项

  • 公开/公告号CN112860551A

    专利类型发明专利

  • 公开/公告日2021-05-28

    原文格式PDF

  • 申请/专利权人 浪潮云信息技术股份公司;

    申请/专利号CN202110142757.4

  • 发明设计人 栗凯;

    申请日2021-02-02

  • 分类号G06F11/36(20060101);

  • 代理机构37100 济南信达专利事务所有限公司;

  • 代理人冯春连

  • 地址 250100 山东省济南市高新区浪潮路1036号浪潮科技园S01号楼

  • 入库时间 2023-06-19 11:08:20

说明书

技术领域

本发明涉及API网关技术领域,具体的说是一种基于API网关实现在线调试和文档导出的方法。

背景技术

随着云计算、人工智能和大数据行业的快速发展,越来越多的应用程序接口通过API网关技术开放给互联网开发者调用,开放后端能力,将自身优势转化为经济价值。

正常情况下,在发布一个API后,开发者会使用Postman或Jmeter工具测试API能否正常调用,对于入参比较多的API,在手工填写入参时很有可能会遗漏某些参数或者参数的位置填写错误,而且某些安全认证的API在调用之前需要通过SDK生成签名信息,然后将签名信息放到指定参数位置,这将导致API在调用之前的准备工作非常繁琐,而且容易出错。另外,托管的API后期可能会对基本信息进行维护,这样就会和最初的接口文档不一致,每次变更API都需要同时维护接口文档。

为了解决这一弊端,提高接口调试效率,涉及研发一种基于API网关实现在线调试和文档导出的方法。

发明内容

本发明针对目前技术发展的需求和不足之处,提供一种基于API网关实现在线调试和文档导出的方法,旨在省去使用工具调试API填写参数以及生成签名所需要的工作,提高接口调试效率和文档维护成本。

本发明的一种基于API网关实现在线调试和文档导出的方法,解决上述技术问题采用的技术方案如下:

一种基于API网关实现在线调试和文档导出的方法,其实现包括API在线调试和文档导出两个阶段;

在API在线调试阶段,通过控制台调试前端页面,并向后端发送调试用到的参数信息,后端校验参数后,进行API的安全认证,并在认证成功后生成签名,进而通过RestTemplate创建API网关的调用请求,将响应返回给控制台的前端页面进行展示;

在文档导出阶段,通过控制台的前端页面选择一个调试完成的API,借助JavaMarkdown Generator工具类将API元数据渲染成markdown格式,并下载API文档到本地。

进一步的,在API在线调试阶段,通过控制台调试前端页面时,前端页面对调试过程中用到的参数信息进行校验,并在校验成功后向后端发送请求。

更进一步的,在API在线调试阶段,后端根据收到的请求校验参数,同时,还对query、header、path位置参数的类型、长度和是否必填进行二次检查,保障入参有效。

进一步的,在API在线调试阶段,后端校验参数成功后,进行API的安全认证,并在认证成功后根据认证方式和选择的AKSK调用签名方法生成签名。

更进一步的,在API在线调试阶段,后端校验参数失败后,向前端页面发送失败信息,前端页面调整参数后再次向后端发送请求。

进一步的,RestTemplate是Spring用于同步client端的核心类,其满足RestFul原则,在默认情况下,RestTemplate依赖jdk的HTTP连接工具。

更进一步的,通过RestTemplate创建API网关的调用请求时,对于不同请求方法的API,使用exchange指定调用方式,支持GET、POST、PATCH、PUT、OPTIONS、DELETE和HEAD请求方法,请求返回结果中提取响应header和body信息,发送至控制台的前端页面进行展示。

进一步的,在文档导出阶段,通过控制台的前端页面选择一个调试完成的API后,点击导出API文档,并将该请求发送至后端,后端首先根据选择的API查询API的元数据信息,随后借助Java Markdown Generator工具类将API元数据渲染成markdown格式,API文档内容渲染完成后以文件输出流的形式随响应下载到本地。

更进一步的,Markdown是一种使用普通文本编辑器编写的标记语言,其可以将纯文本格式编写的文档转换成格式丰富的HTML页面,Markdown文件的后缀名便是“.md”。

本发明的一种基于API网关实现在线调试和文档导出的方法,与现有技术相比具有的有益效果是:

(1)本发明基于API网关的在线调试,发布API到当前环境后即可在控制台的前端页面进行调试并支持导出API文档,可以帮助开发人员和测试人员更方便地对托管接口进行调试,及时跟踪API的运行状态,省去了开发人员或测试人员使用工具调试API填写参数以及生成签名所需要的的工作,提高了接口调试效率和文档维护成本;

(2)本发明基于API网关提供的API在线调试的功能,使开发人员只需选择环境,填写正确的请求参数值,即可对已发布的API进行调试,大大减轻了调试API的工作量,提高了调试效率。

附图说明

附图1是本发明实施例一中API在线调试阶段的流程示意图;

附图2是本发明实施例一中文档导出阶段的流程示意图。

具体实施方式

为使本发明的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本发明的技术方案进行清楚、完整的描述。

实施例一:

结合附图1、2,本实施例提出一种基于API网关实现在线调试和文档导出的方法,其实现包括API在线调试和文档导出两个阶段。

(一)结合附图1,在API在线调试阶段,通过控制台调试前端页面,并向后端发送调试用到的参数信息。

后端校验参数成功后,进行API的安全认证,并在认证成功后根据认证方式和选择的AKSK调用签名方法生成签名,进而通过RestTemplate创建API网关的调用请求,将响应返回给控制台的前端页面进行展示。需要补充的是,RestTemplate是Spring用于同步client端的核心类,其满足RestFul原则,在默认情况下,RestTemplate依赖jdk的HTTP连接工具。通过RestTemplate创建API网关的调用请求时,对于不同请求方法的API,使用exchange指定调用方式,支持GET、POST、PATCH、PUT、OPTIONS、DELETE和HEAD请求方法,请求返回结果中提取响应header和body信息。

进行API的安全认证生成签名的实现代码如下:

后端校验参数失败后,向前端页面发送失败信息,前端页面调整参数后再次向后端发送请求。

(二)结合附图2,在文档导出阶段,通过控制台的前端页面选择一个调试完成的API,点击导出API文档,并将该请求发送至后端,后端首先根据选择的API查询API的元数据信息,随后借助Java Markdown Generator工具类将API元数据渲染成markdown格式,API文档内容渲染完成后以文件输出流的形式随响应下载到本地。需要补充的是,Markdown是一种使用普通文本编辑器编写的标记语言,其可以将纯文本格式编写的文档转换成格式丰富的HTML页面,Markdown文件的后缀名便是“.md”。

Java Markdown Generator工具类渲染API元数据时,可以生成不同级别标题、段落、链接、表格以及代码块。针对不同级别标题渲染的具体代码为:

实施例二:

在实施例一的基础上,本实施例的一种基于API网关实现在线调试和文档导出的方法,在API在线调试阶段,通过控制台调试前端页面时,前端页面对调试过程中用到的参数信息进行校验,并在校验成功后向后端发送请求。

在API在线调试阶段,后端根据收到的请求校验参数,同时,还对query、header、path位置参数的类型、长度和是否必填进行二次检查,保障入参有效。

综上可知,采用本发明的一种基于API网关实现在线调试和文档导出的方法,可以帮助开发人员和测试人员更方便地对托管接口进行调试,及时跟踪API的运行状态,省去了开发人员或测试人员使用工具调试API填写参数以及生成签名所需要的的工作,提高了接口调试效率和文档维护成本。

基于本发明的上述具体实施例,本技术领域的技术人员在不脱离本发明原理的前提下,对本发明所作出的任何改进和修饰,皆应落入本发明的专利保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号