| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package com.zcxk.tcpserver.config;
- import org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController;
- 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.ApiKey;
- import springfox.documentation.service.AuthorizationScope;
- import springfox.documentation.service.SecurityReference;
- import springfox.documentation.spi.DocumentationType;
- import springfox.documentation.spi.service.contexts.SecurityContext;
- import springfox.documentation.spring.web.plugins.Docket;
- import springfox.documentation.swagger2.annotations.EnableSwagger2;
- import java.util.List;
- import static com.google.common.collect.Lists.newArrayList;
- @Configuration
- @EnableSwagger2
- public class SwaggerConfig {
- @Bean
- public Docket api() {
- return new Docket(DocumentationType.SWAGGER_2)
- .ignoredParameterTypes(BasicErrorController.class)
- .groupName("web")
- .select()
- .apis(RequestHandlerSelectors.any())
- .paths(PathSelectors.any())
- .build()
- .apiInfo(apiInfo())
- .securitySchemes(securitySchemes())
- .securityContexts(securityContexts());
- }
- private ApiInfo apiInfo() {
- return new ApiInfoBuilder()
- .title("智慧城市Api")
- .description("智慧城市")
- .version("1.0")
- .termsOfServiceUrl("Terms of service")
- .license("测试")
- .build();
- }
- private List<ApiKey> securitySchemes() {
- return newArrayList(
- new ApiKey("Authorization", "Authorization", "header"));
- }
- private List<SecurityContext> securityContexts() {
- return newArrayList(
- SecurityContext.builder()
- .securityReferences(defaultAuth())
- .forPaths(PathSelectors.regex("^(?!auth).*$"))
- .build()
- );
- }
- List<SecurityReference> defaultAuth() {
- AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything");
- AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];
- authorizationScopes[0] = authorizationScope;
- return newArrayList(
- new SecurityReference("Authorization", authorizationScopes));
- }
- }
|