Spring

[Spring Boot] Tomcat URL parameter 특수문자 허용 설정

snail voyager 2023. 6. 1. 23:02
728x90
반응형

현상

Spring Boot 2.5.* 내장 Tomcat 에서는 URL parameter에 특수문자가 있으면 400 error 발생

 

조치

원칙상 클라이언트에서 특수문자를 인코딩하여 호출해야하지만, 허용이 필요한 특수문자가 있을 수 있음.

Tomcat에 relaxedQueryChars 옵션으로 특수문자 허용 설정

@Component
public class TomcatWebServerConfig implements WebServerFactoryCustomizer<TomcatServletWebServerFactory> {
    @Override
    public void customize(TomcatServletWebServerFactory factory) {
        factory.addConnectorCustomizers(connector -> connector.setProperty("relaxedQueryChars", "|{}[]"));
    }
}

 

https://stackoverflow.com/questions/51703746/setting-relaxedquerychars-for-embedded-tomcat

 

728x90
반응형