Base64 是把任意二进制数据用 64 个可打印字符(A–Z、a–z、0–9、+、/)表示的编码方式,定义在 RFC 4648 中。下面重点说明用样例检验结果。
Base64在线测试
本站的Base64编码工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。
| 输入 | 编码结果 |
|---|---|
| abc | YWJj |
| Hello | SGVsbG8= |
| 中文 | 5Lit5paH |
常见报错
- Incorrect padding(Python):长度不是 4 的倍数,补“=”或检查是否被截断
- Invalid character(JavaScript atob):含有“-”“_”或中文等非法字符,base64url 需先替换回“+”“/”
- InvalidCharacterError:atob 只接受 Latin-1,直接 btoa 中文会报错,要先转成 UTF-8 字节
- 解码结果乱码:字符集不匹配
乱码排查
解码后乱码的常见原因:原文按 GBK 编码却按 UTF-8 解码;数据被截断;中间经过 URL 传输时“+”变成了空格。逐一排查字符集、长度(是否为 4 的倍数)和特殊字符。
常见问题
【为什么 Base64 后变大了?】每 3 个字节变成 4 个字符,体积约增加三分之一。
【Base64 解码后乱码怎么办?】多半是字符集不一致,例如原文按 GBK 编码,却按 UTF-8 解码。换成原始字符集再试。
【图片转 Base64 有什么用?】可以把小图标直接写进 HTML 或 CSS,省去一次请求;但大图会让页面变大,不建议。
文中示例可以在本站对应工具中验证;处理密码、证件号等敏感数据时,请注意保护隐私。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。