改造老项目突然遇到的问题,记录下。
spring boot 项目 Get请求时报错 请求直接返回400错误码
Invalid character found in the request target. The valid characters are defined in RFC 7230 and RF
类似这种错误吧。
其实就是tomcat 7.0.90 tomcat 8 等添加了url的特殊字符校验。
原来请求参数中有 ‘[ ] { }’ 这种字符时可以通过,但是新的tomcat中会被拦截。
解决办法
spring boot 2.2.6 版本中直接如下配置即可,并且如说明一样:
Comma-separated list of additional unencoded characters that should be allowed in URI paths. Only "< > [ \ ] ^ ` { | }" are allowed.
需要哪个配置哪个吧。
server: port: 8080 tomcat: relaxed-path-chars: - '[' - ']' - '{' - '}' relaxed-query-chars: - '[' - ']' - '{' - '}'
乐享:知识积累,快乐无限。