Knife4j 2.0.7 发布,细节优化

栏目: 软件资讯 · 发布时间: 4年前

内容简介:Knife4j前身是swagger-bootstrap-ui,是一个为Swagger接口文档赋能的工具 文档:https://doc.xiaominfo.com 效果(旧版):http://swagger-bootstrap-ui.xiaominfo.com/doc.html 效果(2.X版):http://knife4j.xiaomi...

Knife4j前身是swagger-bootstrap-ui,是一个为Swagger接口文档赋能的工具

文档https://doc.xiaominfo.com

效果(旧版)http://swagger-bootstrap-ui.xiaominfo.com/doc.html

效果(2.X版)http://knife4j.xiaominfo.com/doc.html

Giteehttps://gitee.com/xiaoym/knife4j

GitHubhttps://github.com/xiaoymin/swagger-bootstrap-ui

示例https://gitee.com/xiaoym/swagger-bootstrap-ui-demo

特性 & 优化

1、服务端创建Docket对象时配置globalOperationParameters参数时,header类型不选中或丢失的问题

2、如果服务端写会的json参数中包含base64的图片格式,在响应栏增加图片标签直接显示

Knife4j 2.0.7 发布,细节优化

Knife4j 2.0.7 发布,细节优化

3、springfox升级到2.10.5版本后,针对basePath会在解析时自动追加到path节点,因为以前的版本没有追加,所以会导致重复添加basePath的问题。Gitee #I230K8Gitee #I23G5V

4、导出出md离线文档请求参数部分字段的设置和文档中同步Gitee #I22UFA

5、字段参数说明支持html标签样式。Gitee #I22RZ2

示例代码:

@ApiModelProperty(value = "奖金名称,记住:<br /><span style=\"color:red\">我很重要</span>",example = "MVP奖杯")
private String name;

效果图:

Knife4j 2.0.7 发布,细节优化

6、默认去除小蓝点的版本控制,开发者可以通过在服务端通过配置进行开启,详情请参考增强文档

knife4j:
  enable: true
  setting:
    #是否开启界面中对某接口的版本控制,如果开启,后端接口变化后Ui界面会存在小蓝点
    enableVersion: true 

7、可以通过配置重命名界面Swagger Models的命名,详情请参考增强文档,例如:

knife4j:
  enable: true
  setting:
    enableSwaggerModels: true
    swaggerModelName: 实体类列表

Knife4j 2.0.7 发布,细节优化

8、可以通过配置是否显示调试栏中的AfterScript功能,该属性默认为true,详情请参考增强文档,例如:

knife4j:
  enable: true
  setting:
    enableAfterScript: false

Knife4j 2.0.7 发布,细节优化

9、支持@RequestMapping注解中的params参数Gitee #I22J5Q

10、3.0版本不支持Authorize的问题Gitee #I22WVM

11、增加局部刷新变量的按钮功能,可以通过服务端配置开启Gitee #I22XXI,该属性默认为false,详情请参考增强文档,例如:

knife4j:
  enable: true
  setting:
    enableReloadCacheParameter: true

Knife4j 2.0.7 发布,细节优化

12、修复兼容性bug,当升级后,默认Swagger Models以及文档管理功能丢失的问题

使用方法

Java开发使用Knife4j目前有一些不同的版本变化,主要如下:

1、如果开发者继续使用OpenAPI2的规范结构,底层框架依赖springfox2.10.5版本,那么可以考虑Knife4j的2.x版本

<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-spring-boot-starter</artifactId>
    <!--在引用时请在maven中央仓库搜索2.X最新版本号-->
    <version>2.0.7</version>
</dependency>

2、如果开发者使用OpenAPI3的结构,底层框架依赖springfox3.0.0,可以考虑Knife4j的3.x版本

<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-spring-boot-starter</artifactId>
    <!--在引用时请在maven中央仓库搜索3.X最新版本号-->
    <version>3.0.1</version>
</dependency>

3、如果开发者底层框架使用的是springdoc-openapi框架,则需要使用Knife4j提供的对应版本,需要注意的是该版本没有Knife4j提供的增强功能,是一个纯Ui。

<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-springdoc-ui</artifactId>
    <!--在引用时请在maven中央仓库搜索3.X最新版本号-->
    <version>3.0.1</version>
</dependency>

特点

  • 基于Vue+Ant Design构建的文档,更强大、清晰的接口文档说明能力以及接口调试能力

  • 左右布局,基于Tabs组件的多文档查阅风格

  • 支持在线导出Html、Markdown、Word、PDF等多种格式的离线文档

  • 接口排序,支持分组及接口的 排序 功能

  • 支持接口全局在线搜索功能

  • 提供Swagger资源保护策略,保护文档安全

  • 接口调试支持无限参数,开发者调试非常灵活,动态增加、删除参数

  • 全局缓存调试信息,页面刷新后依然存在,方便开发者调试

  • 以更人性化的table树组件展示Swagger Models功能

  • 文档以多tab方式可显示多个接口文档

  • 请求参数栏请求类型、是否必填着颜色区分

  • 主页中粗略统计接口不同类型数量

  • 支持自定义全局参数功能,主页包括header及query两种类型

  • JSR-303 annotations 注解的支持

  • 更多个性化设置功能

界面

接口文档显示界面如下:

Knife4j 2.0.7 发布,细节优化

接口调试界面如下:

Knife4j 2.0.7 发布,细节优化

Swagger Models功能

Knife4j 2.0.7 发布,细节优化

Knife4j 2.0.7 发布,细节优化

支持导出离线Markdown、Html功能,markdown的表格较原先版本通过缩减显示为树形结构,点击预览导出离线Html效果,效果图如下:

Knife4j 2.0.7 发布,细节优化

通过第三方Markdown软件导出的PDF效果如下图:

Knife4j 2.0.7 发布,细节优化

同时提供了导出离线Html功能,Html功能界面风格和在线几乎没有区别,美观、大方、简洁,点击在线预览效果

界面效果如下图:

Knife4j 2.0.7 发布,细节优化

Star & Issue

感谢各位朋友的支持,前往https://gitee.com/xiaoym/knife4j点个Star吧~~ :)

最后

Knife4j入选2020年度OSC开源项目(开发 工具 类)评选,期待您的投票~~!!!


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

具体数学

具体数学

Ronald L.Graham、Oren Patashnik、Donald E.Knuth / 张凡、张明尧 / 人民邮电出版社 / 2013-4-1 / 99.00元

本书介绍了计算机的数学基础,内容涉及求和、取整函数、数论、二项式系数、特殊数、母函数(发生函数)、离散概率、渐近等等,面向从事计算机科学、计算数学、计算技术诸方面工作的人员,以及高等院校相关专业的师生。一起来看看 《具体数学》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具