SpringBoot使用knife4j進行線上介面除錯
阿新 • • 發佈:2020-09-08
前言
我們在開發一個Java Web
的專案,如果專案整體採用前後端分離的架構的方式,我們會經常使用Swagger
來進行介面除錯和為前端提供介面文件,但是Swagger
並沒有實際上那麼方便,比如我們在傳送Post
請求時,引數選填還是非常不友好,那麼有沒有更好的工具呢?
正文
knife4j
knife4j是為Java MVC
框架整合Swagger
生成Api
文件的增強解決方案,前身是swagger-bootstrap-ui,
具有小巧,輕量,並且功能強悍的優點。
Knife4j
提供兩大核心功能:文件說明 和 線上除錯
文件說明:根據Swagger
的規範說明,詳細列出介面文件的說明,包括介面地址、型別、請求示例、請求引數、響應示例、響應引數、響應碼等資訊,使用swagger-bootstrap-ui
線上除錯:提供線上介面聯調的強大功能,自動解析當前介面引數,同時包含表單驗證,呼叫引數可返回介面響應內容、headers
、Curl
請求命令例項、響應時間、響應狀態碼等資訊,幫助開發者線上除錯,而不必通過其他測試工具測試介面是否正確,簡潔、強大。
SpringBoot使用knife4j進行線上介面除錯
注入依賴
<dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>2.0.4</version> </dependency>
SwaggerConfig.class :knife4j配置類
@Configuration @EnableSwagger2 @EnableKnife4j @Import(BeanValidatorPluginsConfiguration.class) public class SwaggerConfig { /** * 這裡配置swagger掃描的包 * @return */ @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors .basePackage("com.luo.producer")) .paths(PathSelectors.any()).build(); } /** * 這裡配置swagger對外提供服務的埠 * @return */ private ApiInfo apiInfo() { return new ApiInfoBuilder().title("釋出模擬boos介面") .description("簡單優雅的釋出模擬boos介面restful風格介面") // .termsOfServiceUrl("http://127.0.0.1:8080/doc.html") .version("1.0").build(); } }
驗證
測試介面
@RestController @Slf4j public class UserController { @GetMapping("/helloword") public String hello(String input){ return "你好,"+input; } }
啟動專案後:訪問http://127.0.0.1:8080/doc.html
訪問測試介面,進行測試:
到此這篇關於SpringBoot使用knife4j進行線上介面除錯的文章就介紹到這了,更多相關SpringBoot knife4j線上介面除錯內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!