Base64 / URL 编解码
Base64 与 URL 编码互转,支持中文
关于Base64 / URL 编解码
Base64 是把二进制数据映射成 64 个可打印字符的编码方式,常用在只能传输文本的场景,比如邮件、JSON 字段、URL 参数。URL 编码(percent-encoding)则是把空格、中文、& ? 等特殊字符转成 %XX 形式,避免破坏 URL 结构。两者都是编码,不是加密——任何人都能还原。
使用步骤
- 选择模式:Base64 编解码、URL 编解码或 Data URI 处理
- 粘贴原文或密文,中文内容勾选 UTF-8 处理
- 核对输出结果,复制到目标位置
- 批量场景可一次性粘贴多行,按行分别处理
常见错误
把 Base64 当加密
解码只需要一秒。任何“看起来乱码就觉得安全”的想法都危险,敏感数据请用真正的加密算法。
URL 编码不完整
只转义空格不转义 & 和 #,链接照样会断。整个查询串都要编码,服务端再解码。
编码后当作二进制直接比较
Base64 输出依赖填充和换行约定,不同实现可能差在行尾换行;比对内容前先统一格式。
常见问题
为什么用 btoa() 处理中文会报错?
btoa 只接受 Latin-1 字符。中文需要先按 UTF-8 转成字节数组再编码,本工具已内置这个处理。
Base64 能用来加密数据吗?
不能。Base64 是公开的可逆编码,没有任何密钥,只适合传输,绝不能当作密码或敏感数据的保护手段。
URL 编码和 Base64 该用哪个?
URL 编码(encodeURIComponent)用于把参数安全地放进 URL,结果是可读的 %E4%B8%AD 形式;Base64 用于把任意二进制塞进只接受文本的通道,比如邮件、JSON 字段、Data URI。两者目的不同,不能互相替代。
为什么编码后长度会变长三分之一?
Base64 用 4 个字符表示 3 个字节,体积固定涨约 33%,加了换行还会更多。这是编码方式本身的代价,不是实现问题。要传大文件应该走 multipart 或直接传二进制,不要套 Base64。
文件也能转 Base64 吗?
可以,用「图片转 Base64」那个工具,它读本地文件后转成 Data URI。小图标(几 KB)内联进 CSS 能少一次请求;超过 10 KB 反而拖慢首屏,因为 Base64 不可单独缓存、还会阻塞渲染。
来源:内置实现 · License: MIT · 分类:文本
相关阅读
安全、快捷、开源工具及资源
无需安装、无需注册、无需命令行 —— 挑一个工具,填参数,出结果。