Base64 别直接拼进网址:先换成 URL 安全版

举报
yd_229583875 发表于 2026/10/26 08:55:56 2026/10/26
【摘要】 前端做 Base64 编解码,编码解码都调通了,拼进网址里却常翻车。我有一次把一段标准 Base64 直接放进链接参数里发出去,对方解出来是乱的——不是编码错了,是网址把里面的字符改了。问题出在三个字符上:标准 Base64 里的 + 到了查询参数里会被当成空格,/ 会把路径切断,末尾的 = 也容易被截掉。编码本身没问题,一过网址这道关就变了样,查半天还以为是解码端的问题。我现在的习惯就一步...

前端做 Base64 编解码,编码解码都调通了,拼进网址里却常翻车。我有一次把一段标准 Base64 直接放进链接参数里发出去,对方解出来是乱的——不是编码错了,是网址把里面的字符改了。

问题出在三个字符上:标准 Base64 里的 + 到了查询参数里会被当成空格,/ 会把路径切断,末尾的 = 也容易被截掉。编码本身没问题,一过网址这道关就变了样,查半天还以为是解码端的问题。

我现在的习惯就一步:拼进网址之前先换成 URL 安全版,把 + 换成 -、/ 换成 _,再把末尾的 = 去掉;解码那头反过来换回去、把 = 补齐长度再解。注意只换这三个地方,别顺手把别的内容也替换了——换错一位,整段就对不上。

一句话:Base64 要进网址,先问一句“里面有没有 + / =”——有,就先换成 URL 安全版再拼,省得在传输这一步白白丢数据。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。