Files
metaloop/src/main/java/com/metalloop/framework/swagger/OpenApiConfig.java
T
2026-09-11 17:34:14 +08:00

40 lines
1.6 KiB
Java

package com.metalloop.framework.swagger;
import io.swagger.v3.oas.models.Components;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.security.SecurityRequirement;
import io.swagger.v3.oas.models.security.SecurityScheme;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* Springdoc OpenAPI 配置类
* 用于定制 API 文档信息及全局安全认证方案
*/
@Configuration
public class OpenApiConfig {
@Bean
public OpenAPI customOpenAPI() {
return new OpenAPI()
// 设置 API 基本信息
.info(new Info()
.title("有色再生资源交易平台 API")
.version("1.0")
.description("METALLOOP 后端接口文档")
)
// 声明全局安全要求(在 Swagger UI 中显示 Authorize 按钮)
.addSecurityItem(new SecurityRequirement().addList("Sa-Token"))
// 定义安全方案(API Key 方式)
.components(new Components()
.addSecuritySchemes("Sa-Token",
new SecurityScheme()
.type(SecurityScheme.Type.APIKEY)
.in(SecurityScheme.In.HEADER)
.name("metalloop-token") // 与 Sa-Token 配置的 token-name 保持一致
.description("Sa-Token 认证令牌,登录后获取")
)
);
}
}