【工具】根据 swagger 生成 axios 请求配置文件 / api_littleHiuman的博客-程序员宅基地

技术标签: java  homebrew  javascript  mac  

根据后端提供的 swagger 生成配置文件(JavaScript 文件)【简单的说,就是生成 api 目录】

旧标题:【工具】根据后端提供的swagger生成前端的axios请求配置文件/api

github 地址在这里:https://github.com/littleHiuman/GenerateRequestFiles

小插曲

之前还有发在掘金,已经删了。

转载麻烦附上原文出处链接!!

如果觉得有用,麻烦给一个免费的star,谢谢!!

用法

假设后端提供的 swagger 地址是 http://255.255.255.255:3000/swagger-ui.html ,只需要取前面部分就可以了(ip 加端口:http://255.255.255.255:3000

一个 ip 的情况下: node generateIt.js --ip=http://255.255.255.255:3000

多个 ip 的情况下(使用,来分割): node generateIt.js --ip=http://255.255.255.255:3000,http://255.255.255.254:1000



说几句

(重要的事情说三遍)

生成之前会先删掉文件夹里面的内容,受影响的话,请把内容移动到其他文件夹!!!

生成之前会先删掉文件夹里面的内容,受影响的话,请把内容移动到其他文件夹!!!

生成之前会先删掉文件夹里面的内容,受影响的话,请把内容移动到其他文件夹!!!


生成之后会有一句提示:某个域名一共 n 个模块(2020-11-30 补充)

这个模块是按请求 url 来划分的,比如:

/adminUser/test、/adminUser/jest 这两个就属于一个模块(adminUser 模块)

/adminUser/test、/test/adminUser 这两个就属于两个模块(adminUser 模块,test 模块)


生成的文件夹是【不一定】有顺序的,【因为请求返回的顺序无法控制,先返回的先处理】,文件夹名称暂定是 api 加索引(api0、api1、…apin)(2020-11-30 补充)

生成的文件夹是和 generateIt.js 在同一目录下的(我加到下面的问题里了)


因为是根据 swagger 来生成的配置文件,后端对接口描述越详细越好

我们这里的后端提供的 swagger 对接口描述的不是特别详细(比如图中有的字段没有描述)...

下面的图中的请求参数的类型使用的是后端定的类型,我没有去处理...(我加到下面的问题里了)

还有就是!如图,import request from '@/utils/request' 这一句我暂时是写死的(我加到下面的问题里了)


已发现的问题 / 可优化的问题:

  1. 如果后端对参数类型描述不准确,得人力去改…(哭

  2. 请求参数的类型使用的是后端定的类型

  3. request 文件的引入和命名,暂时是写死的(import request from '@/utils/request'

  4. 导出文件这种类型的接口(返回值是文件),需要自己添加 responseType: 'blob'

  5. 函数的方法名可能会出现 JavaScript 的关键字(2020-11-30 补充)【已修复:如果有关键字,拼接 url 中倒数第二段字符串,否则拼接时间戳】

  6. 函数的方法名可能会重复(2020-11-30 补充)

    增加了两个提示语:(2020-11-30 补充)

    1.“计算 url 后缺失 n 个【原因:url 重复】”

    2.“处理函数名后,还有重复!!”(但是依然会写入 js 文件中)

  7. 生成的文件夹和 generateIt.js 在同一目录(2020-11-30 补充)

  8. (感谢 @JamLin29 提的 issue)需要 node 版本 14 以上【已修复,8.17.0 以上可用】(2021-11-02 补充)

  9. (感谢 @JamLin29 提的 issue)域名只能写 ip【已修复,可以包含字母等的域名】(2021-11-02 补充)


对您有帮助的话,麻烦帮我点个 star 呀!

欢迎大家来完善这个工具或者提问题反馈一下呀!

这个工具仅作学习和辅助使用哦。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hiumanChung/article/details/111225530

智能推荐

JS中在windowonload中调用function函数遇见的问题_js window.function-程序员宅基地

参考文章:https://blog.csdn.net/c_p_h/article/details/63684510今天在jsp中的form表单利用onclick=”xxx”来监听js中一个function xxx(){}函数,遇到一个很奇怪的问题就是点击submit按钮之后竟然没有响应xxx()函数。在这之前我已经多次在form表单中利用onclick=”xxx”来监听一个函数,并没有出现过这种..._js window.function

Eclipse IDE for Enterprise Java and Web Developers中配置Tomcat8.5+maven3.6.3+jdk1.8_还能坚持的博客-程序员宅基地

1 下载Maven3.6.3 、解压、配置环境变量1.1 什么是MavenMaven是基于项目对象模型(POM即Project ObjectModel),可以通过一小段描述信息(XML)来管理项目的构建,报告和文档的软件项目管理工具。 POM:POM(project objectmodel)是Maven对一个单一项目的描述。没有POM的话,Maven是毫无用处的——POM是Maven的核心。是POM实现的并驱动了这种以模型来描述的构建方式。作用:管理项目的构建,报告和文档的软件项目管理工具。我

用科斯塔斯 (COSTAS) 环法来实现二进制相移键控 (BPSK) 的相干解调-理论部分_costas环原理-程序员宅基地

用科斯塔斯 (COSTAS) 环法来实现二进制相移键控 (BPSK) 的相干解调-理论部分以下总结基于个人学习整理,欢迎批评指正。文章目录用科斯塔斯 (COSTAS) 环法来实现二进制相移键控 (BPSK) 的相干解调-理论部分一、Costas环基本概念二、公式推导总结一、Costas环基本概念科斯塔斯 (COSTAS) 环又称同相正交环或边环,它的原理框图如图1所示。科斯塔斯 (COSTAS) 环主要由相位鉴别器 (PD)、压控振荡器 (VCO) 和环路滤波器 (LF) 三部分构成。相位鉴别器_costas环原理

Spring+Mybatis+SpringMVC项目实战整合 version 1-1(附源码)_HeartException的博客-程序员宅基地

SSM实战整合之管理图书 (idea2021+maven3.6+mysql8.0+jdk11)一、建项目框架导入maven依赖创建层级目录(分包)配置文件jdbc.propertiesmybatisspringmvcspring总配置文件web.xml二、数据库层(mybatis)创建数据库创建实体类mappermapper接口mapper实现三、service层serviceservice接口service实现四、controller层一、建项目框架导入maven依赖 <propert

send和recv函数解析(转)_modbus协议的send函数和recv函数-程序员宅基地

转载from:https://blog.csdn.net/wangzhida2008/article/details/72901938http://blog.chinaunix.net/uid-23208702-id-131258.htmlsend和recv函数解析(转)http://blog.csdn.net/tiandyoin/article/details/30044781recv函数返回值说明转自:http://blog.csdn.net/gogor..._modbus协议的send函数和recv函数

MIT18.06线性代数课程笔记5:矩阵转置,vector space以及subspace-程序员宅基地

课程简介18.06是Gilbert Strang教授在MIT开的线性代数公开课,课程视频以及相关资料请见https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/index.htm。课程笔记1. 矩阵转置[AT]ij=Aji[A^T]_{ij} = A_{ji}. 通过转置可以定义对称矩阵:AT=AA^T=A。

随便推点

将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)-程序员宅基地

将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)分类: Unix/Linux 2011-07-25 23:38 39774人阅读 评论(15)收藏 举报vimidetagsautoloadfunction数据库 工欲善其事,必先利其器。一

sklearn knn算法用于鸢尾花分类_使用sklearn自带的鸢尾花数据集,使用sklearn库实现knn算法对iris数据集的分类。-程序员宅基地

#knn 算法用于鸢尾花import numpy as np#准确率from sklearn import datasets #自带数据集from sklearn.metrics import accuracy_score# knn算法from sklearn.neighbors import KNeighborsClassifier#训练集和测试集区分 交叉验证from sklearn.model_selection im_使用sklearn自带的鸢尾花数据集,使用sklearn库实现knn算法对iris数据集的分类。

Web API 强势入门指南-程序员宅基地

摘要:WebAPI是一个比较宽泛的概念。这里我们提到WebAPI特指ASP.NETWebAPI。这篇文章中我们主要介绍WebAPI的主要功能以及与其他同类型框架的对比,最后通过一些相对复杂的实例展示如何通过WebAPI构建http服务,同时也展示了VisualStudio构建.net项目的各种强大。目录什么是WebAPI为什么要用WebAPI功能简介WebAPIvsMVCW...

在service调用mapper对象,出现空指针异常-程序员宅基地

在service调用mapper对象,出现空指针异常

JSP九大内置对象_几个内置对象有什么特点?什么时候用哪个?-程序员宅基地

标题内置对象:就是指在JSP页面中不需要程序员自己创建,在JSP内可以直接使用的对象。out:输出request:请求response:响应session:回话application:全局page:页面pageconext:页面上下文config:配置exception:异常..._几个内置对象有什么特点?什么时候用哪个?

什么是气泡图?怎样用Python绘制?有什么用?终于有人讲明白了-程序员宅基地

导读:什么是气泡图?可以用来呈现哪些数据关系?在数据分析过程中可以解决哪些问题?怎样用Python绘制气泡图?本文逐一为你解答。作者:屈希峰来源:大数据DT(ID:bigdatadt)0..._主题分析气泡图