URL 编码器 / 解码器

关于此工具

使用 URL 编码 对 URL 中不允许出现的字符(全角字符、空格、符号)进行编码或解码。可在 encodeURIComponent(用于 URL 的组成部分)与 encodeURI(用于完整 URL)之间切换,也可选择将空格转换为 +。所有处理都在您的浏览器中本地完成(不会发送任何数据)。

URL 编码 / 解码

→ 对查询值或单个路径段等 URL 组件 所需的全部内容进行编码。
→ 仅编码必要部分,使现有的 完整 URL 保持不变。

模式差异
  • encodeURIComponent 适用于 URL 的各个部分(如查询值、路径段、片段值等)。它几乎会编码所有字符,除了 -_.!~*'(),因此 :/?#&= 等也会被转换。
  • encodeURI 应用于完整 URL;它保留在 URL 语法中具有特殊意义的字符(例如 :/?#&=,+;$),从而保证协议和分隔符不会损坏。
  • 当需要兼容表单的编码时,请启用“将空格转换为 +”。解码时工具会把 + 正常还原为空格。
// 示例: 对 "a/b?x=1 2" 进行编码
encodeURIComponent("a/b?x=1 2")
// → "a%2Fb%3Fx%3D1%202"

encodeURI("https://ex.com/a/b?x=1 2")
// → "https://ex.com/a/b?x=1%202"   (:/?= 保持不变,只将空格转换为 %20)

注意事项

  • URL 的部分请使用 encodeURIComponent,完整地址请使用 encodeURI
  • + 在表单提交中常被视为空格(本工具在解码时会将其还原为空格)。
  • 编码后的长度可能会发生明显变化,尤其是多字节 UTF-8 字符。