The valid characters are defined in RFC 7230 and RFC 3986

springboot 中,使用tomcat做服务器,遇到 The valid characters are defined in RFC 7230 and RFC 3986 。

原因,tomcat 高版本使用了更标准的rfc规范,在url上不允许使用部分特殊字符。

源码参看 org.apache.tomcat.util.http.parser.HttpParser 129行
解决方法:

1、改成post方法。这个是最简单,也是最合理的。

2、在启用前设置:

System.setProperty("tomcat.util.http.parser.HttpParser.requestTargetAllow","{}");

经测试和查看源码,在tomcat高版本中无用。

3、配置文件中增加

server.tomcat.relaxed-query-chars={,}

yml中的是

 

此方法可行。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值