关于URLEncode时+号的问题

关于URLEncode和URLDecode


get方法
浏览器会先把空格变成%20 而+号还保留
然后接收到请求之后decode的时候,
        case '+':
                sb.append(' ');
                i++;
                needToChange = true;
                break;
会把+号变成空格,
然后这个字符串中原来的空格(%20)解码之后还是空格
所以导致get方法发送的时候会没有+号


post方法
选择x-www-form-urlencoded的方式发送
这时候会把+号变成%2B  空格变成+,
if (c == ' ') {
                    c = '+';
                    needToChange = true;
                }
然后decode的时候把+号变成空格了,%2B解码成+。


所以来说,post方式直接用URLEncode加密解密是没有问题的
get方式的话就要注意+号了
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值