Swagger에서 ‘Try it out’버튼 비활성화 처리

최대 1 분 소요

  • swagger-ui.html은 RESTful API의 Document를 예쁘고, 쉽게 테스트 할 수 있는 화면을 제공합니다.
  • 개발 환경이라면 이러한 테스트 환경이 매우 유용할 수 있겠지만, 운영 환경 에서는 테스트 데이터가 인입되지 않도록 해야 합니다.

규칙

  1. 운영 환경에서는 조회 API(GET method)만 테스트 가능 하도록 합니다.
  2. 그 외 환경에서는 모든 테스트가 가능해야 합니다.

AS-IS

TO-BE

Code

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    @Profile("prod")
    public UiConfiguration uiConfig() {
        return UiConfigurationBuilder.builder()
            .supportedSubmitMethods(new String[]{"get"})
            .build();
    }
}
적용 결과

POST 에서는 Try it out 버튼이 비활성화 된다.