URLDecoder.decode() 特殊字符的处理
在网络get请求中,如果存在特殊字符 比如 "+,/,%,&,= " ,如果没有被转义就直接使用

发现 + 号 仍然是 + 号,初看上去是没什么问题
这样在我们在后台接收到请求的时候会是这个样子:

可见 中文已经转成URL字符了,+号没被URL化
这时候我们要用转移成中文使用,在被 URLDecoder.decode() 转移成中文的时候 ,发现 ”+“号变成空格了:

这时候如果想要特殊字符不被转成功空格怎么办呢?
因为url请求中特殊字符是需要转义的 ,要把特殊字符转换相应的编码。

解决方案encodeURIComponent() 函数
在前端请求的时候,将参数加上 encodeURIComponent() 函数

函数详细地址:https://www.runoob.com/jsref/jsref-encodeuricomponent.html
使用
js参数加上该函数

使用后的效果:可见请求地址栏编程URL编码

后台服务转码成功识别特殊符号

完成
本文来自博客园,作者:lanwf,转载请注明原文链接:https://www.cnblogs.com/lccsdncnblogs/p/16673364.html

浙公网安备 33010602011771号