deason 5 năm trước cách đây
mục cha
commit
90ebfe874b

+ 31 - 15
examcloud-exchange-starter/src/main/java/cn/com/qmth/examcloud/exchange/config/Swagger2.java

@@ -2,32 +2,48 @@ package cn.com.qmth.examcloud.exchange.config;
 
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
-
 import springfox.documentation.builders.ApiInfoBuilder;
+import springfox.documentation.builders.ParameterBuilder;
 import springfox.documentation.builders.PathSelectors;
 import springfox.documentation.builders.RequestHandlerSelectors;
+import springfox.documentation.schema.ModelRef;
 import springfox.documentation.service.ApiInfo;
-import springfox.documentation.service.Contact;
+import springfox.documentation.service.Parameter;
 import springfox.documentation.spi.DocumentationType;
 import springfox.documentation.spring.web.plugins.Docket;
 import springfox.documentation.swagger2.annotations.EnableSwagger2;
 
+import java.util.ArrayList;
+import java.util.List;
+
 @Configuration
 @EnableSwagger2
 public class Swagger2 {
 
-	@Bean
-	public Docket createRestApi() {
-		return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
-				.apis(RequestHandlerSelectors
-						.basePackage("cn.com.qmth.examcloud.exchange.outer.api.provider"))
-				.paths(PathSelectors.any()).build();
-	}
+    @Bean
+    public Docket buildDocket() {
+        List<Parameter> parameters = new ArrayList<>();
+        // parameters.add(new ParameterBuilder().name("rootOrgId").modelRef(new ModelRef("String")).parameterType("header").required(false).build());
+        // parameters.add(new ParameterBuilder().name("appId").modelRef(new ModelRef("String")).parameterType("header").required(false).build());
+        parameters.add(new ParameterBuilder().name("access_token").modelRef(new ModelRef("String")).parameterType("header").required(false).build());
+        parameters.add(new ParameterBuilder().name("timestamp").modelRef(new ModelRef("String")).parameterType("header").required(false).build());
+
+        return new Docket(DocumentationType.SWAGGER_2)
+                .groupName("Version 3.0")
+                .apiInfo(info())
+                .globalOperationParameters(parameters)
+                .useDefaultResponseMessages(false)
+                .select()
+                .apis(RequestHandlerSelectors.basePackage("cn.com.qmth.examcloud.exchange.outer.api.provider"))
+                .paths(PathSelectors.any())
+                .build();
+    }
 
-	private ApiInfo apiInfo() {
-		return new ApiInfoBuilder().title("API doc")
-				.contact(new Contact("qmth", "http://xxxxx/", "")).version("xxx")
-				.description("API文档").build();
-	}
+    private ApiInfo info() {
+        return new ApiInfoBuilder()
+                .title("接口文档")
+                .version("3.0")
+                .build();
+    }
 
-}
+}