Skip to content

Commit a060d27

Browse files
committed
swagger 연결 완료
1 parent 46dfb7d commit a060d27

File tree

3 files changed

+46
-0
lines changed

3 files changed

+46
-0
lines changed

build.gradle

+1
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ repositories {
2424
}
2525

2626
dependencies {
27+
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2'
2728
implementation 'javax.annotation:javax.annotation-api:1.3.2'
2829
implementation 'javax.servlet:javax.servlet-api:4.0.1'
2930
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'

src/main/java/codeview/main/config/SecurityConfig.java

+6
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,12 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Excepti
4949
.headers(c -> c.frameOptions(HeadersConfigurer.FrameOptionsConfig::disable).disable())
5050
.sessionManagement(c -> c.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
5151
.authorizeHttpRequests(request -> request.requestMatchers(
52+
new AntPathRequestMatcher("/swagger"),
53+
new AntPathRequestMatcher("/swagger-ui.html"),
54+
new AntPathRequestMatcher("/swagger-ui/**"),
55+
new AntPathRequestMatcher("/api-docs"),
56+
new AntPathRequestMatcher("/api-docs/**"),
57+
new AntPathRequestMatcher("/v3/api-docs/**"),
5258
new AntPathRequestMatcher("/"),
5359
new AntPathRequestMatcher("/home"),
5460
new AntPathRequestMatcher("/login"),
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
package codeview.main.config;
2+
3+
4+
import io.swagger.v3.oas.models.Components;
5+
import io.swagger.v3.oas.models.OpenAPI;
6+
import io.swagger.v3.oas.models.info.Info;
7+
import io.swagger.v3.oas.models.security.SecurityRequirement;
8+
import io.swagger.v3.oas.models.security.SecurityScheme;
9+
import org.springframework.context.annotation.Bean;
10+
import org.springframework.context.annotation.Configuration;
11+
12+
@Configuration
13+
public class SwaggerConfig {
14+
private static final String BEARER_TOKEN_PREFIX = "Bearer";
15+
16+
@Bean
17+
public OpenAPI openAPI(){
18+
String securityJwtName = "JWT";
19+
SecurityRequirement securityRequirement = new SecurityRequirement().addList(securityJwtName);
20+
21+
22+
Components components = new Components()
23+
.addSecuritySchemes(securityJwtName, new SecurityScheme()
24+
.name(securityJwtName)
25+
.type(SecurityScheme.Type.HTTP)
26+
.scheme(BEARER_TOKEN_PREFIX)
27+
.bearerFormat(securityJwtName));
28+
29+
Info info = new Info()
30+
.version("v1.0.0")
31+
.title("codeView API");
32+
33+
34+
return new OpenAPI()
35+
.components(components)
36+
.info(info);
37+
}
38+
39+
}

0 commit comments

Comments
 (0)