转载网址:get请求参数特殊字符问题
springboot版本: 2.5.3
get 请求: 127.0.0.1:9999/hadoop01/hdfsController/urlCopy?localFile=D:\suzhou\study\houduan\hadoop\hadoop\file&hFile=hdfs://node01:8020/a.txt
出现了 java.lang.IllegalArgumentException: Invalid character found in the request target [/hadoop01/hdfsController/urlCopy?localFile=D:\suzhou\study\houduan\hadoop\hadoop\file&hFile=hdfs://node01:8020/a.txt ]. The valid characters are defined in RFC 7230 and RFC 3986
解决办法是,在springboot启动中添加一下代码
@Bean
public ConfigurableServletWebServerFactory webServerFactory() {
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
factory.addConnectorCustomizers((TomcatConnectorCustomizer) connector -> connector.setProperty("relaxedQueryChars", "|{}[]\\"));
return factory;
}