swagger3配置Authorization和UserAccessInfo
import io.swagger.annotations.ApiOperation; 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.*; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spi.service.contexts.SecurityContext; import springfox.documentation.spring.web.plugins.Docket; import java.util.Arrays; @Configuration public class SwaggerConfig { @Bean public Docket docket() { return new Docket(DocumentationType.OAS_30) .securityContexts(Arrays.asList(SecurityContext.builder() .securityReferences(Arrays.asList(SecurityReference.builder() .reference("Authorization") .scopes(new AuthorizationScope[]{new AuthorizationScope("global", "accessEverything")}) .build(),SecurityReference.builder() .reference("UserAccessInfo") .scopes(new AuthorizationScope[]{new AuthorizationScope("global", "accessEverything")}) .build())) .build())) .securitySchemes(Arrays.asList(new ApiKey("Authorization", "Authorization", "header"), new ApiKey("UserAccessInfo", "UserAccessInfo", "header"))) .apiInfo(apiInfo()).enable(true) .select() //apis: 添加swagger接口提取范围 .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("XX项目接口文档") .description("XX项目描述") .contact(new Contact("作者", "作者URL", "作者Email")) .version("1.0") .build(); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~