Base64URL · URL-safe Base64 转换
标准 Base64 里的 + / 和 = 一进了 URL 就会被转义,进了文件名就是非法字符,于是有了 URL-safe 版本:用 - _ 代替,去掉填充。本工具解码时自动认这两种写法,不用你手动替换;要输出 URL-safe,在文件模式的选项里勾一下。
粘贴即自动处理,不用点按钮(Ctrl+Enter 立刻转换 / Esc 清空)
拖文件进来,或 ——截图直接 Ctrl+V 也行
任意类型 · 100 MB 封顶
粘贴、拖拽、Ctrl+V 截图都行
和标准 Base64 只差三个字符
- + 换成 - — 加号在 URL 里会被当成空格
- / 换成 _ — 斜杠在 URL 和文件名里是分隔符
- = 直接去掉 — 填充符,解码时能算出来,URL-safe 版本不写
什么时候必须用它
- URL 参数和短链 — 把一段数据塞进查询串,标准 Base64 会被转义得面目全非
- JWT — header 和 payload 都是 base64url,三段用点连起来(要看某个 token 里写了什么,用 JWT 解码)
- Cookie 和 HTTP 头 — 只允许安全字符,加号斜杠都是雷
- 文件名 — 斜杠不能进文件名,这是硬规矩
解码不用手动改
把 URL-safe 的字符串直接贴进「Base64 → 文本」就行:- 和 _ 会自动还原成 + 和 /,缺掉的 = 自动补齐。反过来要生成 URL-safe,切到「文件转 Base64」勾上 URL-safe 选项即可。
常见问题
JWT 里那段能直接解吗?
能,不过有专门的 JWT 解码:整条 token 粘进去,header 和 payload 一起解出来。提醒一句:JWT 的 payload 只是编码不是加密,谁拿到都能看,别往里放敏感信息。
编码时怎么输出 URL-safe?
「文件转 Base64」面板里有 URL-safe 勾选项,勾上后输出的就是 - _ 且不带填充的版本。
为什么有的 Base64 结尾没有等号?
等号是填充符,作用是让长度凑成 4 的倍数。URL-safe 版本默认去掉它,解码时补回来即可——本工具会自动补,不用你管。
这两种写法能混着用吗?
最好别。同一份数据要么全标准要么全 URL-safe。混用虽然能解,但复制进 URL 照样会出问题。