knife4j-admin v1.0发布,任意聚合 Swagger 文档
knife4j-admin
是一个基于Spring Cloud Gateway网关,通过网关的特性,结合knife4j
对Swagger的文档进行动态聚合的管理平台
平台特点:
-
跨语言、跨平台
-
任意聚合Swagger文档,动态发布,调试
-
文档个性化配置、权限等
-
彻底告别聚合网关文档等由于软件版本等造成的技术集成问题
-
独立部署
目前V1.0版本提供的功能:
-
项目管理:查看项目列表,新增项目文档
-
文档预览:通过项目的JSON结构,解析动态添加至Spring Cloud Gateway网关进行文档聚合,并且可以在线调试
项目新增
1、添加项目必须按照如下格式进行
{ "name": "大数据测试平台", "code":"test1", "description":"我是描述信息", "groups": [ { "name": "用户模块", "uri":"http://knife4j.xiaominfo.com", "header":"server1", "url": "/v2/api-docs?group=2.X版本", "swaggerVersion": "2.0" },{ "name": "订单模块", "uri":"http://swagger-bootstrap-ui.xiaominfo.com", "header":"server2", "url": "/v2/api-docs?group=1.8.X版本接口", "swaggerVersion": "2.0" } //more.. ] }
2、平台会根据用户上传的JSON文件在服务端保存一个.json
文件,每一个项目代表内容都是以上一个完整的json
文件
3、项目code
必须唯一
4、项目下的服务列表信息中,header
必须全局唯一,该参数值用户可以随机生成,只需要保证唯一性即可,作为Spring Cloud Gateway网关组件的转发依据
5、groups
集合中,所提供的Swagger接口必须保证可以访问,完整的访问路径是uri
+url
解决痛点
1、多语言使用Swagger时,集成Knife4j较麻烦
虽然Knife4j提供了其他语言的前端版本,但是从总体上还需要自己打包构建,而且依赖于其他Web容器进行单独部署,使用上叫复杂
Knife4j-admin目前是根据OpenAPI V2的Swagger规范文档聚合平台,不同的语言在使用Knife4j时也可以很方便的使用
2、以Spring Cloud的微服务体系聚合Swagger困难重重
在Knife4j的技术交流群中,目前问的最多的就是Spring Cloud微服务架构如何聚合Swagger文档,要么是文档聚合失败,无法显示,要么是由于网关组件(Gateway|zuul)等组件本身的版本问题导致文档显示异常
Knife4j-admin是独立部署,只需要提供微服务的接口既可以通过admin来很方便的集成
3、个性化配置
个性化的配置问题同样也是开发者关心的,例如:
1).Swagger文档能否登陆?
2).如何在生产环境屏蔽Swagger文档
3).文档界面中的XXX功能能否不显示
4).more...
对于个性化的需求,由于Knife4j-admin是独立的平台,对于文档的安全性等方面,可以做到很精准的控制,平台有用户,有可视化操作,有授权,并且可以作为唯一的对外文档发布平台,结合自身的服务器网络环境,做到内外网的环境隔离,文档安全输出.
更多有趣的功能等你来发掘~~!!!
试用
目前,在服务器上部署了一个版本,开发者如果有兴趣可以去体验
访问地址:http://kadmin.xiaominfo.com/index.html#/home
部署手册: https://doc.xiaominfo.com/knife4j/knife4j-admin-deploy.html
Star & Issue
感谢各位朋友的支持,前往https://gitee.com/xiaoym/knife4j点个Star吧~~ :)
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
禅道 12.3.1 版本发布,优化了备份功能和 Excel 导入性能,修复 Bug
禅道项目管理软件集产品管理、项目管理、质量管理、文档管理、组织管理和事务管理于一体,是一款功能完备的项目管理软件,完美地覆盖了项目管理的核心流程。 禅道官网:www.zentao.net 大家好,禅道项目管理软件开源版 12.3.1 发布,本版本主要修复 bug 若干,除此之外,还做了如下调整: 1. 在用户需求和软件需求方面做了改进,用户可以在后台选择开启或关闭该功能,也可以对用户需求和软件需求的概念进行自定义; 2. 在附件的备份上做了调整,用户在备份附件的时候会记录每个文件的大小和数量,每次备份的结果中,会显示总的文件的大小和数量; 3. 当任务列表中同时存在父子任务时,子任务默认为折叠状态,且可以一键全部展开或折叠; 4. 彻底优化了Excel 导入性能,解决了数据量大时易引起页面无响应问题。 优化 Excel 导入性能: 一、修改记录 完成的需求 4827 debug 关闭状态网页上不显示任何报错信息 4807 后台增加对用户需求和软件需求流程的自定义功能 4771 安装的时候修改 session path 为空的语言提示 4767 将然之改为 zdoo 4696 备份附件过...
- 下一篇
Windows Terminal 1.0 正式发布
在 Build 2020 开发者大会上,微软宣布 Windows Terminal 1.0 版本正式可用。Windows Terminal 将从 2020 年 7 月开始每月更新一次。 主要功能: 选项卡和窗格 Windows Terminal 允许用户在选项卡和窗格中运行任何命令行应用程序。用户可以为每个命令行应用程序创建配置文件,并可以并排打开它们以实现无缝地工作流程。同时,用户的每个配置文件都可以根据喜好进行独特定制。此外,如果用户的计算机上安装了 Windows Subsystem for Linux 发行版或其他 PowerShell 版本,则终端将自动为其创建配置文件。 GPU 加速渲染 Windows Terminal 使用 GPU 渲染其文本,为使用命令行时提供了更快的体验。该渲染器还支持 Unicode 和 UTF-8 字符。使得用户有机会在多种语言中使用此 terminal,同时还可以显示用户喜爱的所有表情符号。最后,Windows Terminal 现在还附带Cascadia Code 2005.15。默认字体设置为 Cascadia Mono,这是不包含编程连字...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS8编译安装MySQL8.0.19
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Windows10,CentOS7,CentOS8安装Nodejs环境