Swagger配置類
阿新 • • 發佈:2021-09-01
Swagger配置類
@Configuration @EnableSwagger2 public class SwaggerConfig { @Bean public Docket createRestApi() { Docket docket = new Docket(DocumentationType.SWAGGER_2); ApiInfoBuilder builder = new ApiInfoBuilder(); builder.title("Emos線上辦公系統"); ApiInfo info = builder.build(); docket.apiInfo(info); ApiSelectorBuilder selectorBuilder = docket.select(); //設定所有包類路徑下的所有類 selectorBuilder.paths(PathSelectors.any()); //類上有特定註解才加入swagger selectorBuilder.apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)); docket = selectorBuilder.build(); //swagger新增jwt支援 //1)請求頭引數token,2)請求頭引數token的描述資訊,3)請求頭 ApiKey apiKey = new ApiKey("token", "token", "header"); List<ApiKey> apiKeyList = new ArrayList<>(); apiKeyList.add(apiKey); docket.securitySchemes(apiKeyList); //令牌的作用域 AuthorizationScope scope = new AuthorizationScope("global", "accessEverything"); AuthorizationScope[] scopes = {scope}; SecurityReference reference = new SecurityReference("token", scopes); List refList = new ArrayList(); refList.add(reference); SecurityContext context = SecurityContext.builder().securityReferences(refList).build(); List ctxList = new ArrayList(); ctxList.add(context); docket.securityContexts(ctxList); return docket; } }