URLDecoder.decode() 特殊字符的处理

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

 发现 + 号 仍然是 + 号,初看上去是没什么问题

 这样在我们在后台接收到请求的时候会是这个样子:

 

 可见 中文已经转成URL字符了,+号没被URL化

 这时候我们要用转移成中文使用,在被 URLDecoder.decode() 转移成中文的时候 ,发现 ”+“号变成空格了:

 

这时候如果想要特殊字符不被转成功空格怎么办呢?

因为url请求中特殊字符是需要转义的 ,要把特殊字符转换相应的编码。

 

解决方案encodeURIComponent() 函数

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

 函数详细地址:https://www.runoob.com/jsref/jsref-encodeuricomponent.html

 

使用

js参数加上该函数

 

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

 

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

 完成

posted @ 2022-09-09 16:48  lanwf  阅读(3377)  评论(0编辑  收藏  举报