2026-04-22 · 约 1 分钟阅读
Base64 与 URL 编码:该用哪一个?
Base64 解决“字节转文本”,URL 编码解决“URL 保留字符转义”。
当你需要把二进制或不透明字节放进文本通道时,优先用 Base64。
当文本要进入 query/path 等 URL 位置时,优先用 URL 编码处理保留字符。
如何阅读本对比
两者解决的是不同层的问题:Base64 面向字节表达,URL 编码面向 URI 安全传输。
| 方案 | 数据处理 | 典型速度 | 适用场景 |
|---|---|---|---|
| Base64 编解码 | 将字节转换为文本表示,常见输出含 +、/、= | 小载荷通常很快;体积约增加三分之一 | JWT 片段、文本协议中的二进制片段、剪贴板传递 |
| URL 编解码 | 对 URI 保留字符做 %xx 转义,保证 URL 结构不被破坏 | 通常很快;长度取决于特殊字符密度 | 查询参数、回调地址、重定向目标、表单参数 |
结论要点
- 目标字段是 URL 时,应优先 URL 编码,不要拿 Base64 替代。
- 目标协议要求“文本包裹字节”时用 Base64,并明确字符集与解码边界。