将開源小分隊設為星标 精品文章第一時間讀
大家好,我是可愛又機靈的開源小妹。
今天給大家分享一個非常好用的在線文檔工具:Knife4j
背景現在分工越來越明确,做項目也都是前後端分離,這樣就和前端溝通越來越多,包括現在微服務架構也越來越流行,服務就會進行拆分,各個服務之間有不同的團隊開發,這個時候一份簡潔完善的在線API接口就很有必要了,可以提提高大家的工作效率,減少一些不必要的溝通。Knife4j就是在線API文檔的佼佼者,不僅提供了美觀的在線API文檔,還有其他的一些特性例如:全局參數、個性化設置、資源安全等,大家跟着小妹一塊來看看吧。
快速入門
<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>2.0.9</version></dependency>
@Configuration@EnableSwagger2WebMvcpublic class KnifeConfiguration {@Beanpublic Docket createRestApi {return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo).groupName("V1版本").select.apis(RequestHandlerSelectors.withClassAnnotation(Api.class)).paths(PathSelectors.any).build;}private ApiInfo apiInfo {return new ApiInfoBuilder.title("Knife Simple Demo APIs").description("Knife Simple Demo").version("1.0").build;}}
訪問地址:http://localhost:8080/doc.html,其中端口是自己服務的端口信息,小妹這邊配置的是8080端口
選擇調試,進行訪問
看起來是不是很簡潔,很清楚呢,和前端小夥伴對接的效率都提高了不少。
對比在使用Knife4j之前,小妹一直使用的是swagger,那為什麼要從swagger出來入坑到Knife4j呢?
兩個在簡單時候用上配置&依賴都差不多,Knife4j是在swagger的ui基礎上做了增強。在後端使用上基本是一樣的,主要體現在前端效果上
swagger頁面效果如下:
swagger展示api的方式是一條一條的,不像Knife4j那樣是以左側菜單的方式進行展示的,Knife4j更符合操作習慣 并且功能更豐富。
Knife4j實際上是基于swagger開發的一個增加的UI包,所以不是說swagger不夠好,而是說Knife4j的頁面展示或者操作更加方便。
如果正在使用swagger想轉到Knife4j的話隻需要稍微改動一下依賴 基本就可以轉入看到Knife4j樣式的在線api了。
高級使用上面小妹介紹了Knife4j的簡單使用,Knife4j還有一些其他強大的配置,更豐富的功能,跟着小妹一塊去看看吧。
可以導出4種離線文檔
markdown格式html格式word格式OpenApi格式
全局參數設置
在進行接口調試的時候,有時需要帶上頭信息,如果一個一個接口寫比較麻煩,Knife4j提供了全局參數設置,隻需設置一遍,後續Debug調試頁則會帶上添加的參數。
分組搜索
//設置分組.groupName("V1版本")
可以選擇對應的組查看對應的api,當api多的的時候 可以輸入關鍵字進行搜索。小妹總結
Knife4j不止上面介紹的那幾種特性設置,還有其他的例如授權、功能增強、個性化設置、國際化等等,小妹就不在這裡一一介紹了。
聽到開源小妹的安利,你是不是也有點心動了,趕緊去公衆号後台回複「在線API」,獲取開源項目的地址吧~~~
問君能有幾多愁,開源項目解千愁,我們下期再見!
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!