前端請求后台接口時參數包含特殊字符報400錯誤


解決方法:前端使用encodeURI()加密。后台使用URLDecoder.decode()解密

例:

str=encodeURI(str);

后台--URLDecoder.decode(str,"UTF-8");

 

 encodeURI():把URI字符串采用UTF-8編碼格式轉化成escape格式的字符串。不會被此方法編碼的字符:! @ # $ & ( ) = : / ; ? + '。

反向編碼函數:decodeURI()

 

 encodeURIComponent():把URI字符串采用URF-8編碼格式轉化成escape格式的字符串。與encodeURI相比,這個函數會將更多的字符進行編碼,比如"/"等字符。所以如果字符串里面包含了URI的幾個部分的話,不能用這個來進行編碼。否則“/”字符被編碼后將URL顯示錯誤。不會被此方法編碼的字符:! * ( )。

反向編碼函數:decodeURIComponent()

 

后台加密和解密:

URLEncoder.encode("字符串","UTF-8");//編碼(加密);

URLDecoder.decode("解密","UTF-8");//解密

注:可以使用在線工具試試特殊字符轉碼

 


免責聲明!

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



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