update: swagger-config 수정

This commit is contained in:
UNGGU0704
2025-06-13 17:36:56 +09:00
parent 1d1e8af396
commit 419ef81e31
3 changed files with 53 additions and 70 deletions
@@ -1,7 +1,9 @@
package com.ktds.hi.recommend.infra.config;
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 io.swagger.v3.oas.models.servers.Server;
import org.springframework.context.annotation.Bean;
@@ -14,34 +16,23 @@ import org.springframework.context.annotation.Configuration;
@Configuration
public class SwaggerConfig {
@Bean
public OpenAPI openAPI() {
return new OpenAPI()
// .addServersItem(new Server().url("/"))
.info(new Info()
.title("하이오더 추천 서비스 API")
.description("사용자 취향 기반 매장 추천 및 취향 분석 관련 기능을 제공하는 API")
.version("1.0.0"));
}
final String securitySchemeName = "Bearer Authentication";
/**
* JWT Bearer 토큰을 위한 Security Scheme 생성
*/
private SecurityScheme createAPIKeyScheme() {
return new SecurityScheme()
.type(SecurityScheme.Type.HTTP)
.scheme("bearer")
.bearerFormat("JWT")
.in(SecurityScheme.In.HEADER)
.name("Authorization")
.description("""
JWT 토큰을 입력하세요
사용법:
1. 로그인 API로 토큰 발급
2. Bearer 접두사 없이 토큰만 입력
3. 예: eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOi...
""");
return new OpenAPI()
.addServersItem(new Server().url("/"))
.info(new Info()
.title("하이오더 취향 추천 서비스 API")
.description("사용자 취향 기반 매장 추천, 취향 분석, 추천 알고리즘 등 추천 관련 기능을 제공하는 API")
.version("1.0.0"))
.addSecurityItem(new SecurityRequirement()
.addList(securitySchemeName))
.components(new Components()
.addSecuritySchemes(securitySchemeName, new SecurityScheme()
.name(securitySchemeName)
.type(SecurityScheme.Type.HTTP)
.scheme("bearer")
.bearerFormat("JWT")));
}
}
}