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,因为它是编码查询参数值和任意文本片段时更安全的选择。对应的解码函数(decodeURI 和 decodeURIComponent)执行相反的过程。
如何使用转换器
- 在输入框中粘贴或输入文本。
- 点击编码对文本进行百分号编码,或点击解码将已编码的字符串还原。
- 点击互换将输出移入输入框并清空输出,便于执行反向操作。
- 点击复制输出把结果复制到剪贴板,或点击清空重新开始。
常见问题
这个工具会上传我的文本吗? 不会。所有转换都在本地浏览器中完成,文本永远不会离开你的设备。
如果解码无效字符串会怎样? 工具会显示错误提示。格式错误的百分号序列(例如 %ZZ)无法解码,将被报错。
支持 UTF-8 和非 ASCII 字符吗? 支持。encodeURIComponent 能正确编码所有 UTF-8 字符,包括 emoji、中日韩字符和带重音的字母。
完整 URL 应该用编码还是解码? 如果你有一个完整 URL,只想编码其中某个参数值,请只粘贴该值。用本工具编码整个 URL 也会编码 :// 和 / 分隔符,这通常不是完整地址所需的结果。