TOP
본문 바로가기
[Java]/Spring Boot

[Java] Spring Boot: Swagger 적용하기

by 기록자_Recordian 2025. 4. 23.
728x90
반응형
이전 내용
 

[Java] Spring Boot: 깃허브 대용량 (인텔리제이 깃허브 연동)

이전 내용 [Java] Spring Boot: 외부 파일 열기이전 내용 [Java] Spring Boot: 블로그 앱 만들기이전 내용 [Java] Spring Boot: 스프링 시큐리티, OAuth2, JWT이전 내용 [Java] Spring Boot: 네이버 로그인 구현하기이전 내

puppy-foot-it.tistory.com


Swagger란?

 

Swagger는 API 설계 및 문서화 도구로, OpenAPI Specification (OAS)에 기반한 프레임워크입니다. API를 쉽게 만들고, 문서화하며, 테스트할 수 있도록 돕는 여러 기능을 제공한다.


Swagger 적용하기

 

Build.gradle에 의존성 추가

implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.1.0'

 

WebOAuthSecurityConfig의 filterChain 부분에 swagger와 v3/ 부분 추가

@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
    http
            .authorizeHttpRequests(auth -> auth
                    .requestMatchers(
                    		"/login",
                            "/signup",
                            "/user",
                            "/oauth2/**",  // OAuth2 로그인 관련 요청 허용
                            "/api/token",
                            "/swagger-ui/**",
                            "/v3/api-docs/**"
                    ).permitAll()  // 허용된 요청 URL 설정
                    .anyRequest().authenticated()  // 나머지 요청은 인증 필요
            )
            .oauth2Login(oauth2Login -> oauth2Login
                    .loginPage("/login")  // 사용자 정의 로그인 페이지
                    .defaultSuccessUrl("/articles")  // 로그인 성공 시 리다이렉트 URL
                    .failureUrl("/login?error=true")  // 로그인 실패 시 리다이렉트 URL
            )
            .logout(logout -> logout
                    .logoutSuccessUrl("/login")  // 로그아웃 성공 시 리다이렉트 URL
                    .invalidateHttpSession(true)  // 로그아웃 시 세션 무효화
            )
            .csrf(AbstractHttpConfigurer::disable);

    return http.build();  // SecurityFilterChain 빌드하여 반환
}

 

로컬 서버를 실행하고, 아래의 주소로 접속

http://localhost:포트번호/swagger-ui/index.html

 

 


다음 내용

 

[Java] Spring Boot: 방명록 프로젝트 디벨롭 개요

이전 내용 [GitHub] 깃허브 대용량 (인텔리제이 깃허브 연동)이전 내용 [Java] Spring Boot: 외부 파일 열기이전 내용 [Java] Spring Boot: 블로그 앱 만들기이전 내용 [Java] Spring Boot: 스프링 시큐리티, OAuth2, JW

puppy-foot-it.tistory.com

 

728x90
반응형