tomcat服务器get请求400错误,RFC 7230 and RFC 3986 问题解决
原因:get请求,里面包含了RFC 7230 and RFC 3986定义之外的特殊字符。
RFC3986文档规定,Url中只允许包含以下四种:
1、英文字母(a-zA-Z)
2、数字(0-9)
3、-_.~ 4个特殊字符
4、所有保留字符,RFC3986中指定了以下字符为保留字符(英文字符):
! * ’ ( ) ; : @ & = + $ , / ? # [ ]
解决:修改tomcat配置文件server.xml 允许请求中包含{ }[ ] 等字符
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" relaxedQueryChars="[]|{}^\`"<>" redirectPort="8443" />