url传输中+转为%2B取到变空格的问题

2021-07-12 02:06

阅读:779

标签:back   解决   thinkphp   传输   解决方法   round   str   decode   加密   

一个加密串,通过url传过来后怎么也解密不了。

原串:

h1tQYMmnx7jdvowi9KnaEM5dHfamJ+rbaRnvhwhUmRAvyxpA2AGzszx5k9K0qdhiQUq7m42SpNbmDgtK11SzA9N4tvuBDpAaR1axfBJWXBLT20dy7FtYvXIPMLwnSMx/v2j0KkjHvrY=

 

urlencode后的串:

h1tQYMmnx7jdvowi9KnaEM5dHfamJ%2brbaRnvhwhUmRAvyxpA2AGzszx5k9K0qdhiQUq7m42SpNbmDgtK11SzA9N4tvuBDpAaR1axfBJWXBLT20dy7FtYvXIPMLwnSMx%2fv2j0KkjHvrY%3d

 

通过$_GET收到的串:

h1tQYMmnx7jdvowi9KnaEM5dHfamJ rbaRnvhwhUmRAvyxpA2AGzszx5k9K0qdhiQUq7m42SpNbmDgtK11SzA9N4tvuBDpAaR1axfBJWXBLT20dy7FtYvXIPMLwnSMx/v2j0KkjHvrY=

对比发现,+转成%2B,收到的时候变成了空格。

 

解决方法:

传之前做urlencode两次:urlencode(urlencode($str))

两次urlencode后的串变成了:

h1tQYMmnx7jdvowi9KnaEM5dHfamJ%252BrbaRnvhwhUmRAvyxpA2AGzszx5k9K0qdhiQUq7m42SpNbmDgtK11SzA9N4tvuBDpAaR1axfBJWXBLT20dy7FtYvZuUePw%252F26RAv2j0KkjHvrY%253D

奇葩的是,通过thinkphp的$_GET收到的串不用decode,直接就是正常串:

h1tQYMmnx7jdvowi9KnaEM5dHfamJ+rbaRnvhwhUmRAvyxpA2AGzszx5k9K0qdhiQUq7m42SpNbmDgtK11SzA9N4tvuBDpAaR1axfBJWXBLT20dy7FtYvXIPMLwnSMx/v2j0KkjHvrY=

 

其它系统要decode一次。。。

 

url传输中+转为%2B取到变空格的问题

标签:back   解决   thinkphp   传输   解决方法   round   str   decode   加密   

原文地址:http://www.cnblogs.com/dwj192/p/7083284.html


评论


亲,登录后才可以留言!