URL 编码器/解码器

任何位于 A-Z a-z 0-9 - _ . ~ 之外的字符在 URL 中出现时均需进行百分比转义处理。若处理不当,浏览器可能会将您导向非预期页面,或 API 可能以 400 错误拒绝请求。该编码器可处理完整的 URL 或纯参数值,在可读文本格式与安全传输格式之间自动切换,且不会破坏 /、? 等结构化字符,除非用户明确指定例外情况。

如何对 URL 进行编码和解码

  1. 1

    粘贴网址或值

    请输入完整的网址、查询字符串或单个参数。

  2. 2

    选择编码级别

    完整URL模式下`/ : ? #`保持原状;组件模式则会屏蔽所有保留字段。

  3. 3

    运行转换

    每个字符均采用 UTF-8 编码,保留字节则替换为 `%HH`。

  4. 4

    需要时可反向操作

    该工具可将百分比转码后的输入数据还原为其原始字符。

encode 与 encodeComponent 的区别

这两种模式均源自 JavaScript,并对应 RFC 3986 中不同的规则。

模式 保持原状 适用于以下情况
完整网址(encodeURI) : / ? # [ ] @ ! $ & ' ( ) * + , ; = 您已拥有结构化的网址
组件(encodeURIComponent) 仅限未预留字符 您正在向模板中插入值

该工具常用于修复的问题

  • 查询值内的空格会转换为 %20,从而使服务器仅接收单个参数。
  • 值内的和号(&)会转换为 %26,从而不会另起一个新的查询键值对。
  • 搜索词中的加号会转换为 %2B,以防止服务器将其识别为空格。
  • 非 ASCII 文本(如 café)会转换为 caf%C3%A9(UTF-8 编码,占用两个字节)。

双编码陷阱

若对已编码的字符串进行二次编码,会产生无效结果:例如 %20 会被误编码为 %2520。当无法确定输入数据来源时,请务必先进行解码处理。该工具在编码前检测到输入数据中含有百分比序列时会发出警告。

常见问题

是的,当您选择表单 URL 模式时。严格的 RFC 3986 模式会将 + 保留为字面意义的加号,因为在 URI 中只有 %20 才是规范的空格表示。

是的。全URL模式仅对不符合有效URI结构的字符进行编码,因此正确的URL保持原样,而空格及非ASCII字符仍会被转义处理。

采用 UTF-8,遵循 RFC 3986 及 WHATWG URL 规范。ISO-8859-1 等传统编码格式不受支持。

不。数据编码仅在您的浏览器中本地执行,不会发送或存储任何信息。

相关工具

此工具还提供其他语言版本