1. 程式人生 > 實用技巧 >swagger前端兄弟的除錯工具

swagger前端兄弟的除錯工具

swagger用途

  swagger是一個介面測試工具,前端程式設計師和後臺程式是分離開發的,當前端程式設計師需要向後臺進行互動,那麼就需要一個工具去訪問路徑。傳送一個請求,請求會攜帶一個或多個引數,然後介面會檢視到後臺查詢到的資料。後臺程式設計師一般都會用postman,這倆是一個意思。swagger還有個好處,就是頁面好看。

依賴配置

  在父級pom.xml匯入依賴,依賴下載真的很慢,還是要耐心等待

        <!--
為了減少程式設計師撰寫文件時間,提高生產力,swagger2應運而生,使用swagger2可以減少編寫過多文件,
只要通過程式碼就能生成文件API,提供前端人員用於測試
--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.4.0</version> </dependency> <dependency> <groupId>io.springfox</
groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.4.0</version> </dependency>

  在application.properties中配置訪問埠,這個是配置檔案,所以放在api模組中

#配置服務埠
server.port=8088
server.tomcat.uri-encoding=utf-8
server.max-http-header-size=80KB

啟動類配置掃描包

//啟動類09
@SpringBootApplication  //掃描所有包
@MapperScan(basePackages = "com.wt.mapper")
@ComponentScan(basePackages = {"com.wt"})
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class);
    }
}

配置swagger介面

  啟動類和介面的放置地方

package com.wt.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class Swagger2 {
//   訪問路徑
    //http://localhost:8088/swagger-ui.html 原ui路徑
    //配置swagger2核心配置 docket
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)  //指定api型別為swagger2
                .apiInfo(apiInfo())//用於定義api文件彙總資訊
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.wt.controller")) //指定controller包
                .paths(PathSelectors.any()) //所有controller
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder() //介面的資訊建造者
        .title("裂變平臺,介面api")   //文件頁標題
        .contact(new Contact("wt",
                "http://www.wt.com",
                "[email protected]"))   //聯絡人資訊
                .description("專為微信裂變平臺提供的api文件")  //詳細資訊
                .version("1.0.1")  //文件版本號
                .termsOfServiceUrl("https://www.wt.com") //網站地址
                .build();
    }
}

測試

  測試是使用的properties中的埠:http://localhost:8088/swagger-ui.html,如果介面中有傳遞引數的話,這裡也可以傳遞引數,在後面result可以檢視相應的結果