swagger-bootstrap-ui 1.8.5 發(fā)布了。swagger-bootstrap-ui 是 Swagger 的增強(qiáng)UI 實(shí)現(xiàn),目的是替換 Swagger 默認(rèn)的 UI 實(shí)現(xiàn) Swagger-UI,使文檔更友好一點(diǎn)兒
swagger-bootstrap-ui在1.8.5以后,她不在是一個(gè)純webjar的UI工具了,她增強(qiáng)了swagger的一些功能支持,例如tags、接口的排序,一些個(gè)性化的支持,目前只增強(qiáng)接口排序
后續(xù)更多關(guān)于swagger的增強(qiáng)功能需求非常歡迎大家提issue反饋,讓這款UI更加豐富強(qiáng)大.
swagger-bootstrap-ui 1.8.5 主要更新如下:
1、fixed formdata類型參數(shù)針對(duì)array數(shù)組類型無(wú)增加按鈕
2、fixed 響應(yīng)內(nèi)容高度占比,參數(shù)過(guò)多的情況無(wú)法顯示
3、多選項(xiàng)卡文檔介紹、在線調(diào)試position位置引起的不適改動(dòng),由豎變橫.
4、增強(qiáng)排序功能,添加個(gè)性化配置管理功能,可開(kāi)啟個(gè)性化配置
5、關(guān)于個(gè)性化增強(qiáng)功能,目前已經(jīng)實(shí)現(xiàn)了tags、和接口api方法的排序,使用方式:
在原EnableSwagger2
注解上增加@EnableSwaggerBootstrapUi
注解
@Configuration@EnableSwagger2@EnableSwaggerBootstrapUIpublic class SwaggerConfiguration { //more... }
針對(duì)tags分組排序,UI的排序規(guī)則是順序排序,最小值1,最大值也是默認(rèn)值Integer.Max_VALUE;
如果不使用SwaggerBootstrapUi的增強(qiáng)功能,則無(wú)需開(kāi)啟@EnableSwaggerBootstrapUi
注解
tags的排序規(guī)則分兩種:
a、一種是判斷Swagger的@Api
注解的position屬性是否不等于0(默認(rèn)值為0),如果該值不為空,則獲取此值,根據(jù)該值排序
b、如果postion=0(不寫的情況下),判斷是否存在注解@ApiSort
的值,如果有值,則獲取此值,根據(jù)該值排序
c、所以排序的取值規(guī)則是:position>@ApiSort
接口api的排序規(guī)則:
a、判斷@ApiOperation
注解上的postion屬性是否不等于0(默認(rèn)值為0),如果該值不為空,則獲取此值,根據(jù)該值排序
//postion屬性賦值@ApiOperation(httpMethod = "POST",position = 2,value = "Test2Model測(cè)試數(shù)組參數(shù),多個(gè)",response=Test2Model.class)@ApiResponses({ @ApiResponse(code = 200, message = "非HTTP狀態(tài)碼,返回值JSON code字段值,描述:成功")})@ApiImplicitParams({ @ApiImplicitParam(name = "ids",paramType ="form",value = "參數(shù)",allowMultiple = true, required = true)})
b、如果postion=0(不寫的情況下),判斷是否存在注解@ApiOperationSort
的值,如果有值,則獲取此值,根據(jù)該值排序
c、所以排序的取值規(guī)則是:position>@ApiOperationSort
注意:
注解@EnableSwaggerBootstrapUi
、@ApiSort
、@ApiOperationSort
是本UI工具包提供的Java注解,排序功能的使用需要在啟用原EnableSwagger2
注解上增加@EnableSwaggerBootstrapUi
注解方可生效
6、默認(rèn)去除接口api地址的線上,默認(rèn)只顯示方法類型、方法說(shuō)明兩個(gè)屬性,當(dāng)然,新版本增加的個(gè)性化的配置功能,如果你覺(jué)得api地址顯示任然有需要,可在個(gè)性化配置中開(kāi)啟該功能,個(gè)性化配置屬性存儲(chǔ)在localStorage對(duì)象中.只需要配置一次接口.
7、fixed 構(gòu)建curl功能中寫死http,根據(jù)window.location.href
動(dòng)態(tài)判斷(http|https)的情況
8、如果請(qǐng)求參數(shù)是json參數(shù)body類型,文檔說(shuō)明中添加請(qǐng)求示例json展示,方便查看
9、請(qǐng)求示例、響應(yīng)示例json自動(dòng)適配高度
10、選中接口api菜單時(shí),菜單顯示激活色,顯示背景顏色background-color: #eee;
11、fixed 離線文檔markdown格式錯(cuò)亂問(wèn)題(table標(biāo)題換行導(dǎo)致顯示異常)
12、離線文檔已預(yù)覽html的方式展現(xiàn),復(fù)制文檔功能依然是復(fù)制markdown語(yǔ)法
13、請(qǐng)求參數(shù)及響應(yīng)參數(shù)說(shuō)明改為多行顯示,超出長(zhǎng)度不以省略號(hào)顯示,防止出現(xiàn)浮層一直顯示的bug
Maven坐標(biāo)
<dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.8.5</version></dependency>
碼云:https://gitee.com/xiaoym/swagger-bootstrap-ui
GITHUB:https://github.com/xiaoymin/Swagger-Bootstrap-UI
在線體驗(yàn):http://swagger-bootstrap-ui.xiaominfo.com/doc.html
歡迎提BUG、Pull Request給我,共同來(lái)完善這個(gè)小工具~~~~
還未給swagger-bootstrap-ui點(diǎn)過(guò)贊的朋友,前往https://gitee.com/xiaoym/swagger-bootstrap-ui給個(gè)Star吧~~ :)
聯(lián)系客服