[Kotlin] Swagger 3.0 Header 추가 방법

0

Kotlin

목록 보기
27/32
@Configuration
class SwaggerConfig {
    ...
    
    // 아래 내용 추가
    @Bean
    fun globalHeader() = OperationCustomizer { operation: Operation, _: HandlerMethod ->
        operation.addParametersItem(Parameter()
            .`in`(ParameterIn.HEADER.toString())
            .schema(StringSchema().name("Location")) //원하는 Header(나는 Location이 필요했음)
            .name("Location")) // 여기도 위와 동일
        operation
    }
}

그리고 그룹 중 V2 버전에만 (버전을 나눴다면) 추가하고 싶으면

@Bean
    fun apiV1(): GroupedOpenApi = GroupedOpenApi.builder()
        .group("V1")
        .pathsToMatch("/**")
        .pathsToExclude(v2Path)
        .build()

@Bean
    fun apiV2(): GroupedOpenApi = GroupedOpenApi.builder()
        .group("V2")
        .pathsToMatch(v2Path)
        .addOperationCustomizer(globalHeader()) //V1에는 추가 없이 V2에만 추가
        .build()

출처

profile
백엔드를 공부하고 있습니다.

0개의 댓글