URL 编码/解码
对比百分号编码并控制解码层数
编码转换
🔒 100% 本地运行 — 你的数据不会离开当前页面由 Evan 维护•最近更新:2026年9月29日
页面阅读模式
完整说明还包括常见问题处理、操作示例、代码片段、FAQ 和相关工具,便于核对结果或排查问题。
工具说明
对照会转义 URL 分隔符的 encodeURIComponent 与保留分隔符的 encodeURI。解码模式使用 decodeURIComponent,可执行单次或最多四次嵌套解码。默认开启多层解码及表单式 + 转空格,均可在高级模式修改。结果随输入更新;解码模式会报告错误百分号转义或无效 UTF-8。输入与选项保存为本地草稿,清空可移除。
推荐工作流
失败门诊(高频踩坑)
解码后的文本看起来多出了查询参数
原因:整串解码会把值内的 %26、%3D 还原成可见的 &、=,此时文本已经不能保留原参数边界。
修复:把原始编码 URL 交给 URL 解析器查看参数行,不要再拆分完全解码后的文本。
生产可用片段
把目标 URL 放进一个查询参数值
text
输入:https://example.com/a?x=1&y=2
encodeURIComponent:
https%3A%2F%2Fexample.com%2Fa%3Fx%3D1%26y%3D2
放入参数的示例:
https://app.example.com/go?next=https%3A%2F%2Fexample.com%2Fa%3Fx%3D1%26y%3D2
encodeURI 会保留目标地址中的 : / ? = & 结构字符。场景配方
01
逐层检查百分号编码
目标:判断当前层的 %252F 应还原为编码斜杠,还是应保留字面的 %2F。
- 选择“解码”,打开高级模式,关闭多层自动解码。
- 输入 %252F,一次得到 %2F;将该结果单独输入,才会得到 /。
- 若 + 表示字面加号,关闭“按表单编码处理 + 为空格”;只有输入采用表单加号编码时才开启。
结果:由你确定解码停止在哪一层。开启多层解码时最多执行四次,+ 选项会在每一层应用。
常见问题
Auto 能准确区分原文和编码输入吗?
Auto 根据是否存在 %XX 转义来判断。字面文本 %20 因此会被当成编码内容,而单独的 + 不会触发解码。判断不符合用途时,请明确选择编码或解码。
encodeURI 会替完整 URL 内的参数值自动编码吗?
不会。它会保留 &、=、# 等分隔符,无论这些字符出现在何处。参数值内部需要包含这些字符时,应先单独编码该值,再拼接 URL。
为什么解码 % 或 %E4 会报错?
单独的百分号不是完整转义,%E4 也不是完整 UTF-8 序列。解码要求有效的百分号 UTF-8 编码,不会修复字节或猜测旧字符集。
百分号编码能加密内容吗?
不能。它只改变字符和字节的表示,任何人都能解码,不提供保密或签名能力。
继续浏览