URL 编码 / 解码

编码和解码 URL 字符串。支持 UTF-8、查询参数和特殊字符——全部在浏览器中运行,无需上传,即时完成。

关于 URL 编码 / 解码

这个 URL 编码 / 解码工具完全在你的浏览器中运行。在输入框中输入或粘贴字符串,点击编码将其百分号编码以便在 URL 中安全使用,或点击解码将已编码的字符串还原为纯文本。整个过程不会上传任何数据到服务器——转换通过 JavaScript 在你的设备上瞬时完成。

为什么需要 URL 编码

URL 只能使用 ASCII 字符集在互联网上传输。许多字符——例如空格、问号、& 符号,以及 éñ 或中日韩字符等非 ASCII 字母——不允许出现在 URL 中,或在 URL 中有特殊含义。URL 编码(又称百分号编码)将每个不安全字符替换为 % 后跟两个十六进制数字,例如空格变为 %20,欧元符号 变为 %E2%82%AC

如果不编码,查询参数中的空格会破坏 URL,而 & 会被误认为参数之间的分隔符。编码保证任何文本——包括 UTF-8 多字节字符——都能安全传输。

encodeURI 与 encodeURIComponent 的区别

JavaScript 提供了两个相关函数,本工具使用 encodeURIComponent 进行完整编码:

  • encodeURI() —— 编码完整 URL,但保留保留字符(; , / ? : @ & = + $ #)不变,从而保持 URL 结构。当你想编码整个 URL 时使用。
  • encodeURIComponent() —— 编码每一个在 URL 中有特殊含义的字符,包括保留字符。用于单个查询参数名和值,避免与 URL 语法冲突。

本工具使用 encodeURIComponent,因为它是编码查询参数值和任意文本片段时更安全的选择。对应的解码函数(decodeURIdecodeURIComponent)执行相反的过程。

如何使用转换器

  1. 在输入框中粘贴或输入文本。
  2. 点击编码对文本进行百分号编码,或点击解码将已编码的字符串还原。
  3. 点击互换将输出移入输入框并清空输出,便于执行反向操作。
  4. 点击复制输出把结果复制到剪贴板,或点击清空重新开始。

常见问题

这个工具会上传我的文本吗? 不会。所有转换都在本地浏览器中完成,文本永远不会离开你的设备。

如果解码无效字符串会怎样? 工具会显示错误提示。格式错误的百分号序列(例如 %ZZ)无法解码,将被报错。

支持 UTF-8 和非 ASCII 字符吗? 支持。encodeURIComponent 能正确编码所有 UTF-8 字符,包括 emoji、中日韩字符和带重音的字母。

完整 URL 应该用编码还是解码? 如果你有一个完整 URL,只想编码其中某个参数值,请只粘贴该值。用本工具编码整个 URL 也会编码 :/// 分隔符,这通常不是完整地址所需的结果。