springboot. The valid characters are defined in RFC 7230 and RFC 3986
时间: 2024-01-09 14:13:28 浏览: 190
解决spring boot请求包含非法字符问题 The valid characters are defined in RFC 7230 and RFC 3986 错误
5星 · 资源好评率100%
Spring Boot是一个用于构建Java应用程序的开源框架。它使用内置的Tomcat作为服务器,用于处理HTTP请求和响应。在发送GET请求时,如果请求中包含特殊字符[ ] ,可能会导致错误java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986。这是由于Tomcat对请求目标进行了过滤,只允许一些特定的字符。根据RFC 3986文档的规定,URL中只允许包含英文字母、数字、-_.~4个特殊字符以及所有保留字符(! * ' ( ) ; : @ & = $ , / ? # [ ]) 。因此,如果在Spring Boot项目中使用了较高版本的Tomcat,可能会遇到该问题。解决方法是在请求中避免使用特殊字符[ ] ,或者可以升级Spring Boot版本为2.2.5以上,其中包括Tomcat版本为9.0.31以上,这样可以避免该错误。
阅读全文