package com.takensoft.common.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.filter.CommonsRequestLoggingFilter; import org.springframework.web.filter.ForwardedHeaderFilter; import jakarta.servlet.Filter; /** * @author : takensoft * @since : 2025.01.22 * @modification * since | author | description * 2025.01.22 | takensoft | 최초 등록 * * Web 관련 설정을 위한 COnfig */ @Configuration public class WebConfig { /** * @return ForwardedHeaderFilter * * ForwardedHeaderFilter를 사용하여 HTTP 요청의 헤더 정보(특히 Forwarded 및 X-Forwarded-* 헤더)를 적절히 처리할 수 있도록 필터를 추가 */ @Bean public Filter forwardedHeaderFilter() { return new ForwardedHeaderFilter(); } /** * @return @return CommonsRequestLoggingFilter * * CommonsRequestLoggingFilter를 사용하여 HTTP 요청 로깅을 설정 */ @Bean public CommonsRequestLoggingFilter requestLoggingFilter() { CommonsRequestLoggingFilter loggingFilter = new CommonsRequestLoggingFilter(); loggingFilter.setIncludeClientInfo(true); loggingFilter.setIncludeQueryString(true); loggingFilter.setIncludePayload(true); loggingFilter.setIncludeHeaders(true); return loggingFilter; } }