当前位置:   article > 正文

出现java.lang.IllegalArgumentException: Invalid character found in the request target应该如何解决

java.lang.illegalargumentexception: invalid character found in the request t

今天遇到一个问题:

原因:

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

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

所以解决办法

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

2.如果使用高版本的tomcat

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

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

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

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/282323
推荐阅读
相关标签
  

闽ICP备14008679号