第十章

Base64 的 8 大应用场景

从前端到后端,Base64 无处不在

1. 电子邮件附件 (MIME)

SMTP 协议只支持纯文本。当你发送图片或 PDF 时,邮件客户端会自动将其转换为 Base64 文本并嵌入邮件正文中。

2. Data URI (HTML/CSS)

可以将小图标直接嵌入 HTML 或 CSS 文件中,减少 HTTP 请求。例如:
<img src="data:image/png;base64,..." />

3. JWT (JSON Web Tokens)

Token-based 认证的标准。JWT 由三部分组成,其中 Header 和 Payload 都是 Base64URL 编码的 JSON 字符串。

4. Kubernetes Secrets

K8s 的 Secrets 对象使用 Base64 存储敏感数据(如密码)。注意:这只是混淆,不是加密!

5. HTTP 基本认证

Header Authorization: Basic ... 后面跟随的字符串,就是 username:password 的 Base64 编码结果。

6. 或者是 API 二进制传输

当 JSON API 需要返回二进制文件(如 PDF 报表)时,通常会将其 Base64 编码后放入 JSON 字段中返回。

7. 数据库存储

某些老旧数据库或特定的 JSON 字段类型(如 MongoDB BSON 中的 Binary)在展示或存储时会使用 Base64。

8. 字体嵌入

在 CSS 的 @font-face 中,可以使用 Base64 直接嵌入字体文件,避免跨域问题和额外的请求。