RFC 7230 and RFC 3986 问题解决
今天启动项目时报了这样一个错误
java.lang.IllegalArgumentException: Invalid character found in the request target *****
*****(省略). The valid characters are defined in RFC 7230 and RFC 3986.........
原因是因为Tomcat版本在8.0.3 以后的版本加入了字符限制
解决方法
在启动类下加入这个Bean,重新定制规则
@Bean
public ConfigurableServletWebServerFactory webServerFactory() {
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
factory.addConnectorCustomizers(new TomcatConnectorCustomizer() {
@Override
public void customize(Connector connector) {
connector.setProperty("relaxedQueryChars", "|{}[]");
}
});
return factory;
}
然后解决