原因:URL传输会转义base64的/,+字符
标准Base64并不适合直接放在URL里传输,因为URL编码器会把标准Base64中的/和+字符转义为%xx的形式
function base64_urlsafe_encode($data){
return rtrim(strtr(base64_encode($data), '+/', '-_'), '='); # 替换+ => -, / => _, 删除结尾 =
}
function base64_urlsafe_decode($data){
return base64_decode(strtr($data, '-_', '+/'));
}