采用 Vue 编写的功能强大的 Swagger-ui 页面
swagger-ui
有非常多的版本,觉得不太好用,用postman
,每个接口都要自己进行录入。所以在基于think-vuele
进行了swagger
格式json
的解析,自己实现了一套swaggerui界面。
swagger分为后端数据提供方方和前端页面展示请求方。从一定角度来看,swagger是一种标准的数据格式的定义,对于不同语言进行实现一些注解API式的东西,能快速生成这种描述restful
格式的api
信息的json
串.
此项目模块依赖于 think-vuele
demo:http://sw.tennetcn.com
github:
https://github.com/chfree/think-swagger-ui-vuele
使用方式
自行下载编译
// 下载代码
git clone https://github.com/chfree/think-swagger-ui-vuele
// 安装依赖
npm install
// 直接运行
npm run dev
// 打包
npm run build
java项目 maven直接依赖
<dependency>
<groupId>com.tennetcn.free</groupId>
<artifactId>think-swagger-ui-starter</artifactId>
<version>0.0.4</version>
</dependency>
此jar包的开源项目为think-free-base
中的子项目模块
登陆
登陆界面分为json
模式和swagger
请求地址访问,没多大区别,只有拿到标准的swagger
的json
数据即可。
支持两种主题,一种是后端管理系统模式的主题。另外一种也是类似,中间1024px进行居中,两边留白。
主页
对于我使用过的一个版本的swagger
来说,当接口数量在1000+
以上,会等的时间非常长,原因是他一次将所有接口数据进行解析渲染,这个就是慢的原因。
所以我将此进行优化,改为先解析出api
摘要信息,然后在点击摘要的时候进行请求头、请求体的渲染;基本可以做到秒开
可以自动填充非json
请求体的数据,采用的是mock.Random
。
对于json请求体的数据,可以进行json
格式化编辑,也是非常方便。json
在线格式化编辑使用的是josdejong
大神的jsoneditor
对于响应数据直接采用json
格式化组件进行格式化展示,支持展开层级。再也不用将返回的数据在去找相关的json
格式化工具进行格式化了。格式化控件采用的是chenfengjw163
大神的vue-json-viewer
设置
在后端api请求的时候,一般都会在请求头中带一些token的验证,来进行用户标识,所以在设置中,进行了自定义请求头的设置,可以方便的设置相关的请求头,在任何一个请求都会自动带上设置的请求信息。
swagger 信息展示
来源于后端swagger配置的相关信息在此处进行展示
- 【编程基础】C语言内存使用的常见问题
- kmeans聚类理论篇K的选择(轮廓系数)
- 算法之旅 | 选择排序法
- 【专业技术】Android数据保存之SharedPreferences
- 【答疑解惑】Java中的高精度数字
- 2000! | 看上去如此简单的面试题,让太多“前端”英雄好汉折戟
- 【Windows编程】系列第六篇:创建Toolbar与Statusbar
- arguments,想说爱你不容易
- 【android开发】Android binder学习一:主要概念
- 高考啦! JavaScript高考全国卷
- 2017 JavaScript高考全国卷 参考答案与解析
- 用贝叶斯判别分析方法预测股票涨跌
- 开发 | 在 Mac OS X 装不上 TensorFlow?看了这篇就会装
- 【答疑解惑】Java中的默认构造器和equals方法
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- background-size之详解
- a伪类
- CodeForces - 1102A(思维题)
- C++使用指针,动态数组,指针做参数需要注意的问题等总结
- POJ 1170 Shopping Offers非状态压缩做法
- HDU 4283 You Are the One
- C++cin,cout以及常见函数总结,cin,cout格式化控制
- 最简单,最明了,看了就会的VScode和C++的配置!(Visual Studio Code)
- C++字符串输入输出以及复合类型浅谈
- Codeforce 1155D Beautiful Array(DP)
- C++类型转换几种情况
- 疯子的算法总结(九) 图论中的矩阵应用 Part 1 POJ3613 Cow Relays
- 『数据库』你这些知识点都不会,你学个锤子SQL数据库!
- The Preliminary Contest for ICPC Asia Xuzhou 2019 徐州网络赛 XKC's basketball team
- The Preliminary Contest for ICPC Asia Xuzhou 2019 徐州网络赛 D Carneginon