From 38f29e38fcc668171dc05c53d40a36b895c86102 Mon Sep 17 00:00:00 2001 From: liusuyi <1951119284@qq.com> Date: 星期四, 10 十月 2024 13:34:28 +0800 Subject: [PATCH] init --- ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java | 66 ++++++++++++++++++++------------- 1 files changed, 40 insertions(+), 26 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java b/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java index 63269c8..e1a9568 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java @@ -1,29 +1,23 @@ package com.ruoyi.web.core.config; -import java.util.ArrayList; -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import com.ruoyi.common.config.ARDConfig; import io.swagger.annotations.ApiOperation; import io.swagger.models.auth.In; -import org.springframework.web.servlet.config.annotation.EnableWebMvc; +import org.springframework.beans.factory.annotation.Autowired; +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.Contact; -import springfox.documentation.service.SecurityReference; -import springfox.documentation.service.SecurityScheme; +import springfox.documentation.service.*; 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 springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc; + +import java.util.ArrayList; +import java.util.List; /** * Swagger2鐨勬帴鍙i厤缃� @@ -38,23 +32,17 @@ @Autowired private ARDConfig ardConfig; - /** 鏄惁寮�鍚痵wagger */ - @Value("${swagger.enabled}") - private boolean enabled; - - /** 璁剧疆璇锋眰鐨勭粺涓�鍓嶇紑 */ - @Value("${swagger.pathMapping}") - private String pathMapping; - /** * 鍒涘缓API */ - @Bean + @Bean("baseApi") public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) // 鏄惁鍚敤Swagger - .enable(enabled) + .enable(true) + //鍒嗙粍鍚嶇О + .groupName("baseApi") // 鐢ㄦ潵鍒涘缓璇PI鐨勫熀鏈俊鎭紝灞曠ず鍦ㄦ枃妗g殑椤甸潰涓紙鑷畾涔夊睍绀虹殑淇℃伅锛� .apiInfo(apiInfo()) // 璁剧疆鍝簺鎺ュ彛鏆撮湶缁橲wagger灞曠ず @@ -69,9 +57,35 @@ /* 璁剧疆瀹夊叏妯″紡锛宻wagger鍙互璁剧疆璁块棶token */ .securitySchemes(securitySchemes()) .securityContexts(securityContexts()) - .pathMapping(pathMapping); + .pathMapping("/"); } - + /** + * 鍒涘缓API-VideoCall + */ + @Bean("VideoCallApi") + public Docket createRestApiVideoCall() + { + return new Docket(DocumentationType.SWAGGER_2) + // 鏄惁鍚敤Swagger + .enable(true) + //鍒嗙粍鍚嶇О + .groupName("VideoCallApi") + // 鐢ㄦ潵鍒涘缓璇PI鐨勫熀鏈俊鎭紝灞曠ず鍦ㄦ枃妗g殑椤甸潰涓紙鑷畾涔夊睍绀虹殑淇℃伅锛� + .apiInfo(apiInfo()) + // 璁剧疆鍝簺鎺ュ彛鏆撮湶缁橲wagger灞曠ず + .select() + // 鎵弿鎵�鏈夋湁娉ㄨВ鐨刟pi锛岀敤杩欑鏂瑰紡鏇寸伒娲� + .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) + // 鎵弿鎸囧畾鍖呬腑鐨剆wagger娉ㄨВ + .apis(RequestHandlerSelectors.basePackage("com.ruoyi.call.controller")) + // 鎵弿鎵�鏈� .apis(RequestHandlerSelectors.any()) + .paths(PathSelectors.any()) + .build() + /* 璁剧疆瀹夊叏妯″紡锛宻wagger鍙互璁剧疆璁块棶token */ + .securitySchemes(securitySchemes()) + .securityContexts(securityContexts()) + .pathMapping("/"); + } /** * 瀹夊叏妯″紡锛岃繖閲屾寚瀹歵oken閫氳繃Authorization澶磋姹傚ご浼犻�� */ @@ -91,7 +105,7 @@ securityContexts.add( SecurityContext.builder() .securityReferences(defaultAuth()) - .operationSelector(o -> o.requestMappingPattern().matches("/.*")) + .forPaths(PathSelectors.regex("^(?!auth).*$")) .build()); return securityContexts; } -- Gitblit v1.9.3