Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ dependencies {
testImplementation 'org.springframework.boot:spring-boot-testcontainers'
testImplementation 'org.testcontainers:junit-jupiter'
testImplementation 'org.testcontainers:postgresql'
// Swagger
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.15'
Comment thread
coderabbitai[bot] marked this conversation as resolved.
}

// =========================================
Expand Down
47 changes: 47 additions & 0 deletions src/main/java/com/team6/moduply/common/config/OpenApiConfig.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
package com.team6.moduply.common.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 org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class OpenApiConfig {

@Bean
public OpenAPI openAPI() {
//csrf
SecurityScheme csrfScheme = new SecurityScheme()
.type(SecurityScheme.Type.APIKEY)
.in(SecurityScheme.In.HEADER)
.name("X-XSRF-TOKEN")
.description("CSRF 토큰 (GET /api/auth/csrf-token 호출 후 XSRF-TOKEN 쿠키 값)");

//jwt
SecurityScheme jwtScheme = new SecurityScheme()
.type(SecurityScheme.Type.HTTP)
.scheme("bearer")
.bearerFormat("JWT")
.in(SecurityScheme.In.HEADER)
.name("Authorization")
.description("JWT 액세스 토큰 (로그인 후 발급)");

SecurityRequirement securityRequirement = new SecurityRequirement()
.addList("csrfToken")
.addList("jwtToken");
Comment thread
coderabbitai[bot] marked this conversation as resolved.
Outdated

return new OpenAPI()
.info(new Info()
.title("모두의 플레이리스트 API 문서")
.description("모두의 플레이리스트 프로젝트의 Swagger API 문서입니다.")
.version("1.0")
)
.components(new Components()
.addSecuritySchemes("csrfToken", csrfScheme)
.addSecuritySchemes("jwtToken", jwtScheme)
);
}
}
2 changes: 1 addition & 1 deletion src/main/resources/logback-spring.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@
</springProfile>

<!-- ===================== TEST ===================== -->
<springProfile name="test">
<springProfile name="local, test">

<root level="INFO">
<appender-ref ref="CONSOLE"/>
Expand Down
Loading