766113 工具箱
Encoding

Base64 与 URL Safe Base64 的差别

Base64 常被用来把二进制或复杂文本放进纯文本环境,但普通 Base64 并不总是适合直接放进 URL。

普通 Base64 会使用 +/=。这些字符在 URL、查询参数、文件路径或 Cookie 中可能有特殊含义,需要额外转义。URL Safe Base64 会把 + 替换成 -,把 / 替换成 _,并且常常省略末尾填充符 =

JWT 使用的就是 Base64URL。很多开发者复制 header 或 payload 后,用普通 Base64 解码器会遇到 padding 错误。解决方式不是随便改内容,而是先确认它是不是 URL Safe 变体,再按规则补齐填充。

什么时候该警惕

Base64 不是加密。任何人拿到字符串都能还原原始内容。它解决的是传输和表示问题,不解决保密问题。