解决方案:Invalid character found in the request target. The valid characters are defined in RFC 7230

报错'Error parsing HTTP request header'通常由请求目标中包含非法字符引起。Apache Tomcat的HttpParser限制了URL中的特定字符。解决办法是检查并转译请求链接中的特殊字符,例如将反斜杠替换为正斜杠。
摘要由CSDN通过智能技术生成

报错信息如下: 

从错误日志中看到Error parsing HTTP request header
负责解析http请求的是org.apache.tomcat.util.http.parser.HttpParser,它对请求对URL中对字符做了限制,具体代码如下:
IS_NOT_REQUEST_TARGET[]中定义了一堆not request target
 

转换过来就是以下字符(对应10进制ASCII),也就是URL中不能包含的特殊字符:

  • 键盘上那些控制键:(<32或者=127)
  • 非英文字符(>127)
  • 空格(32)
  • 双引号(34)
  • #(35)
  • <(60)
  • >(62)
  • 反斜杠(92)
  • ^(94)
  • TAB上面那个键,~(96)
  • {(123)
  • }(124)
  • |(125)
     

 请求的链接含有特殊字符,或者请求url不正确,把这些字符转译,

我这里是因为请求地址有问题

把 \\改成/

就可以了 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值