在請求目標中找到無效字符。有效字符在RFC 7230和RFC 3986中定義


 背景:

  今天在使用Tomcat8部署完成項目做測試的時候,發現有的接口會報錯400,后端提示在請求目標中找到無效字符。有效字符在RFC 7230和RFC 3986中定義

原因分析:

  是因為 日志顯示請求地址中包含不合法字符,出現400錯誤
  tomcat高版本嚴格按照RFC 3986規范解析地址。該規范只允許包含  a-zA-Z  0-9  -  _    .  ~  以及所有保留字符  ! * ’ ( ) ; : @ & = + $ , / ? # [ ]  

  但是項目在發起請求的參數中出現{},所以需要配置一下

解決方案:

  在tomcat配置文件中做出以下配置,找到tomcat配置中的server.xml路徑就在config文件夾下

 

 

 

 

relaxedPathChars="|{}[],%" relaxedQueryChars="|{}[],%"

加上紅色框中的代碼  問題解決。

作者:彼岸舞

時間:2020\11\04

內容關於:工作中用到的小技術

本文屬於作者原創,未經允許,禁止轉發


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM