springboot Invalid character found in the request target
Posted 树上的疯子^
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot Invalid character found in the request target相关的知识,希望对你有一定的参考价值。
1.出现的原因:主要和出现了特殊字符
SpringBoot 2.0.0 以上都采用内置tomcat8.0以上版本,而tomcat8.0以上版本遵从RFC规范添加了对Url的特殊字符的限制,url中只允许包含英文字母(a-zA-Z)、数字(0-9)、-_.~四个特殊字符以及保留字符( ! * ’ ( ) ; : @ & = + $ , / ? # [ ] ) (26*2+10+4+18=84)这84个字符,请求中出现了大括号或者[],所以tomcat报错。
2.解决办法:
1.第一种办法;降低tomocat的版本(当然不推荐)
2.第二种办法在springboot中的启动类中加入下面:
@Bean
public ConfigurableServletWebServerFactory webServerFactory()
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
factory.addConnectorCustomizers((TomcatConnectorCustomizer) connector -> connector.setProperty("relaxedQueryChars", "|[]\\\\"));
return factory;
以上是关于springboot Invalid character found in the request target的主要内容,如果未能解决你的问题,请参考以下文章
springboot+dubbo+mybatis多模块项目invalid boundexception
SpringBoot 整合Mybatis报错(Invalid bound statement (not found))
springboot Invalid character found in the request target
springboot Invalid character found in the request target
springBoot mybatis-plus Invalid bound statement (not found) ??????xml??????sql