今天遇到一个问题:

原因:

查了资料,大部分都说是新的标准中,请求不支持“{}”,但是把大括号转义之后还是出现同样的问题,后来把中括号转义后就可以了。找到问题的原因了:

由于json中带有“[]”,请求会被tomcat拦截。

所以解决办法

1.可以使用低版本的tomcat解决该问题

2.如果使用高版本的tomcat

则需要再tomcat的config文件下的catalina.properties中加上一句

tomcat.util.http.parser.HttpParser.requestTargetAllow=|{}

如果这样还不行的话,在config下的server.xml文件中添加relaxedQueryChars="[,]",就可以解决这个问题了.

 <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" relaxedQueryChars="[,]"/>

记得添加完后,重启服务器哦.

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐