Skip to content

Commit

Permalink
Merge pull request #72 from Team-INSERT/feat/#71
Browse files Browse the repository at this point in the history
Feat/#71
  • Loading branch information
NameIsUser06 authored Apr 9, 2024
2 parents 77c375f + 57dc5cd commit 2828cf4
Show file tree
Hide file tree
Showing 3 changed files with 97 additions and 0 deletions.
3 changes: 3 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,9 @@ dependencies {

//aws s3
implementation 'com.amazonaws:aws-java-sdk-s3:1.12.638'

// swagger-ui
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.5.0'
}

tasks.named('test') {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package com.project.bumawiki.global.config.swagger;

import org.springdoc.core.models.GroupedOpenApi;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class GroupApiConfig {

@Bean
public GroupedOpenApi authApi() {
return GroupedOpenApi.builder()
.group("auth")
.pathsToMatch("/api/auth/**")
.build();
}

@Bean
public GroupedOpenApi coinApi() {
return GroupedOpenApi.builder()
.group("coin")
.pathsToMatch("/api/coins/**")
.build();
}

@Bean
public GroupedOpenApi docsApi() {
return GroupedOpenApi.builder()
.group("docs")
.pathsToMatch("/api/docs/**")
.build();
}

@Bean
public GroupedOpenApi thumbsUpApi() {
return GroupedOpenApi.builder()
.group("thumbsUp")
.pathsToMatch("/api/thumbs/**")
.build();
}

@Bean
public GroupedOpenApi userApi() {
return GroupedOpenApi.builder()
.group("user")
.pathsToMatch("/api/user/**")
.build();
}

@Bean
public GroupedOpenApi api() {
return GroupedOpenApi.builder()
.group("*")
.pathsToMatch("/api/**")
.build();
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package com.project.bumawiki.global.config.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;

@Configuration
public class SwaggerConfig {
@Bean
public OpenAPI openAPI() {
String jwt = "JWT";
SecurityRequirement securityRequirement = new SecurityRequirement().addList(jwt);
Components components = new Components().addSecuritySchemes(jwt, new SecurityScheme()
.name(jwt)
.type(SecurityScheme.Type.HTTP)
.scheme("bearer")
.bearerFormat("JWT")
);

return new OpenAPI()
.addSecurityItem(securityRequirement)
.components(components)
.info(apiInfo());
}

private Info apiInfo() {
return new Info()
.version("v2.0")
.title("Api Docs")
.description("부마위키 스웨거 API 문서");
}
}

0 comments on commit 2828cf4

Please sign in to comment.