update: swagger-config 수정
This commit is contained in:
parent
1d1e8af396
commit
419ef81e31
@ -5,6 +5,7 @@ import io.swagger.v3.oas.models.OpenAPI;
|
|||||||
import io.swagger.v3.oas.models.info.Info;
|
import io.swagger.v3.oas.models.info.Info;
|
||||||
import io.swagger.v3.oas.models.security.SecurityRequirement;
|
import io.swagger.v3.oas.models.security.SecurityRequirement;
|
||||||
import io.swagger.v3.oas.models.security.SecurityScheme;
|
import io.swagger.v3.oas.models.security.SecurityScheme;
|
||||||
|
import io.swagger.v3.oas.models.servers.Server;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
@ -14,32 +15,24 @@ import org.springframework.context.annotation.Configuration;
|
|||||||
*/
|
*/
|
||||||
@Configuration
|
@Configuration
|
||||||
public class SwaggerConfig {
|
public class SwaggerConfig {
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public OpenAPI openAPI() {
|
public OpenAPI openAPI() {
|
||||||
|
final String securitySchemeName = "Bearer Authentication";
|
||||||
|
|
||||||
return new OpenAPI()
|
return new OpenAPI()
|
||||||
.info(new Info()
|
.addServersItem(new Server().url("/"))
|
||||||
.title("Analytics Service API")
|
.info(new Info()
|
||||||
.description("하이오더 분석 서비스 API 문서")
|
.title("하이오더 AI 분석 서비스 API")
|
||||||
.version("1.0.0"));
|
.description("데이터 수집, AI 피드백 생성, 분석 조회, 실행 계획 관리 등 AI 분석 관련 기능을 제공하는 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")));
|
||||||
}
|
}
|
||||||
/**
|
}
|
||||||
* 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...
|
|
||||||
""");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,5 +1,7 @@
|
|||||||
package com.ktds.hi.member.config;
|
package com.ktds.hi.member.config;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.models.security.SecurityRequirement;
|
||||||
|
import io.swagger.v3.oas.models.Components;
|
||||||
import io.swagger.v3.oas.models.OpenAPI;
|
import io.swagger.v3.oas.models.OpenAPI;
|
||||||
import io.swagger.v3.oas.models.info.Info;
|
import io.swagger.v3.oas.models.info.Info;
|
||||||
import io.swagger.v3.oas.models.security.SecurityScheme;
|
import io.swagger.v3.oas.models.security.SecurityScheme;
|
||||||
@ -13,27 +15,24 @@ import org.springframework.context.annotation.Configuration;
|
|||||||
*/
|
*/
|
||||||
@Configuration
|
@Configuration
|
||||||
public class SwaggerConfig {
|
public class SwaggerConfig {
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public OpenAPI openAPI() {
|
public OpenAPI openAPI() {
|
||||||
|
final String securitySchemeName = "Bearer Authentication";
|
||||||
|
|
||||||
return new OpenAPI()
|
return new OpenAPI()
|
||||||
// .addServersItem(new Server().url("/"))
|
.addServersItem(new Server().url("/"))
|
||||||
.info(new Info()
|
.info(new Info()
|
||||||
.title("하이오더 회원 관리 서비스 API")
|
.title("하이오더 회원 관리 서비스 API")
|
||||||
.description("회원 가입, 로그인, 취향 관리 등 회원 관련 기능을 제공하는 API")
|
.description("회원 가입, 로그인, 취향 관리, 구독 관리 등 회원 관련 기능을 제공하는 API")
|
||||||
.version("1.0.0"));
|
.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")));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
/**
|
|
||||||
* 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 토큰을 입력하세요 (Bearer 접두사 제외)");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,7 +1,9 @@
|
|||||||
package com.ktds.hi.recommend.infra.config;
|
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.OpenAPI;
|
||||||
import io.swagger.v3.oas.models.info.Info;
|
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.security.SecurityScheme;
|
||||||
import io.swagger.v3.oas.models.servers.Server;
|
import io.swagger.v3.oas.models.servers.Server;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
@ -14,34 +16,23 @@ import org.springframework.context.annotation.Configuration;
|
|||||||
@Configuration
|
@Configuration
|
||||||
public class SwaggerConfig {
|
public class SwaggerConfig {
|
||||||
|
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public OpenAPI openAPI() {
|
public OpenAPI openAPI() {
|
||||||
return new OpenAPI()
|
final String securitySchemeName = "Bearer Authentication";
|
||||||
// .addServersItem(new Server().url("/"))
|
|
||||||
.info(new Info()
|
|
||||||
.title("하이오더 추천 서비스 API")
|
|
||||||
.description("사용자 취향 기반 매장 추천 및 취향 분석 관련 기능을 제공하는 API")
|
|
||||||
.version("1.0.0"));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
return new OpenAPI()
|
||||||
* JWT Bearer 토큰을 위한 Security Scheme 생성
|
.addServersItem(new Server().url("/"))
|
||||||
*/
|
.info(new Info()
|
||||||
private SecurityScheme createAPIKeyScheme() {
|
.title("하이오더 취향 추천 서비스 API")
|
||||||
return new SecurityScheme()
|
.description("사용자 취향 기반 매장 추천, 취향 분석, 추천 알고리즘 등 추천 관련 기능을 제공하는 API")
|
||||||
.type(SecurityScheme.Type.HTTP)
|
.version("1.0.0"))
|
||||||
.scheme("bearer")
|
.addSecurityItem(new SecurityRequirement()
|
||||||
.bearerFormat("JWT")
|
.addList(securitySchemeName))
|
||||||
.in(SecurityScheme.In.HEADER)
|
.components(new Components()
|
||||||
.name("Authorization")
|
.addSecuritySchemes(securitySchemeName, new SecurityScheme()
|
||||||
.description("""
|
.name(securitySchemeName)
|
||||||
JWT 토큰을 입력하세요
|
.type(SecurityScheme.Type.HTTP)
|
||||||
|
.scheme("bearer")
|
||||||
사용법:
|
.bearerFormat("JWT")));
|
||||||
1. 로그인 API로 토큰 발급
|
|
||||||
2. Bearer 접두사 없이 토큰만 입력
|
|
||||||
3. 예: eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOi...
|
|
||||||
""");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user