[发明专利]基于Swagger动态生成范本文件的方法、装置及应用在审
| 申请号: | 202210504287.6 | 申请日: | 2022-05-10 |
| 公开(公告)号: | CN114816364A | 公开(公告)日: | 2022-07-29 |
| 发明(设计)人: | 朱淑敏;沈文彦;文林 | 申请(专利权)人: | 城云科技(中国)有限公司 |
| 主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/33;G06F8/38;G06F8/41;G06F16/958 |
| 代理公司: | 杭州汇和信专利代理有限公司 33475 | 代理人: | 董超 |
| 地址: | 310052 浙江省杭州市滨江区长*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 swagger 动态 生成 范本 文件 方法 装置 应用 | ||
1.一种基于Swagger动态生成规范文件的方法,其特征在于,包括以下步骤:
调取swagger提供的api接口以获取webjson格式的web数据,将所述web数据转换为json数据格式的数据源;
基于所述数据源对应的api接口的分类名称生成对应的接口定义;
基于所述接口定义生成Typescript文件;
将所述Typescript文件格式化为规范文件,其中所述规范文件符合eslint规范以及prettier美化规范。
2.根据权利要求1所述的基于Swagger动态生成规范文件的方法,其特征在于,在“基于所述数据源的组名称生成对应的接口定义”步骤中,将所述数据源对应的具有相同分类名称的api接口分为同一类,解析所述数据源确定每一api接口的请求类型,并基于所述请求类型获取入参,基于所述入参生成接口定义。
3.根据权利要求2所述的基于Swagger动态生成规范文件的方法,其特征在于,在“将所述数据源对应的具有相同分类名称的api接口分为同一类”步骤中,若所述数据源对应的api接口没有分类名称,则将所述数据源并入全局共用api接口内。
4.根据权利要求2所述的基于Swagger动态生成规范文件的方法,其特征在于,在“确定每一api接口的请求类型获取入参,并基于所述请求类型获取入参”步骤中,api接口的请求类型为get请求或post请求,根据所述数据源的method字段中包含的类型判断请求类型为get或post请求,如果是get请求,则过滤含有query字段的参数,作为入参生成为入参模板;如果是post请求,则过滤含有body字段的参数,作为入参生成入参模板。
5.根据权利要求2所述的基于Swagger动态生成规范文件的方法,其特征在于,在“基于入参生成接口定义”步骤中,若入参为多个,循环遍历所述请求类型,通过比对definitions中的字段,获取到对应的数据传输对象,并定义一个缓存数组将已经获取过的数据传输对象缓存至内存中。
6.根据权利要求2所述的基于Swagger动态生成规范文件的方法,其特征在于,在“基于所述入参生成接口定义”步骤中,判断所述入参是否为多个,若入参为多个,则表示请求类型为数组,此时循环遍历所述数组,通过比对definitions中的字段,获取到对应的数据传输对象,定义一个缓存数组,将已经获取过的数据传输对象缓存至内存中;当遍历完毕或者入参仅为一个时,根据预定义的类型转换函数将所述数据源的swagger类型转换为typescript可识别的类型,通过比对definitions中的字段,获取到对应的数据传输对象,基于所述数据传输对象生成接口定义。
7.根据权利要求1所述的基于Swagger动态生成规范文件的方法,其特征在于,包括步骤:将多次出现的接口定义提升为全局接口,对全局接口统一定义一个Deepcommon的字符串并将其放置在临时数组中。
8.根据权利要求1所述的基于Swagger动态生成规范文件的方法,其特征在于,将生成的接口定义输出拼接为一个字符串,其中在字符串头部信息中添加接口名称,同时添加接口注释以及公共包。
9.根据权利要求8所述的基于Swagger动态生成规范文件的方法,其特征在于,通过正则全量将接口注释的*/的文本转换为空。
10.根据权利要求8所述的基于Swagger动态生成规范文件的方法,其特征在于,根据接口title统一生成接口名称,若至少两api接口的名称一致的话,则在每一api接口的接口名称后添加operationId。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于城云科技(中国)有限公司,未经城云科技(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210504287.6/1.html,转载请声明来源钻瓜专利网。





