将 URL、查询字符串和特殊字符转换为百分比编码,或将百分比编码的文本还原为可读的 URL — 即时完成,直接在浏览器中运行。本工具集百分比编码器、百分比解码器、查询字符串编码器、查询字符串解码器和兼容 UTF-8 的 URL 编码转换器于一体,一个页面全搞定。
在输入框中粘贴 URL 或任意文本,选择编码或解码,并指定是处理单个 URL 组件还是完整 URL,然后复制结果。所有操作均在浏览器中本地运行,使用 JavaScript 原生 URL 函数,因此您的输入数据永远不会离开您的设备。
组件模式将 / ? # & = 等保留字符进行百分号编码,使值在查询字符串或路径段中安全使用。
这是一款私密的浏览器端 URL 编码器和解码器。它使用原生函数 encodeURIComponent、encodeURI、decodeURIComponent 和 decodeURI 安全处理 UTF-8 文本,不向任何服务器传输数据。
URL 编码器将不能直接用于 URL 的字符转换为百分比编码序列。URL 解码器执行相反操作,将百分比编码文本还原为原始字符。本页面支持双向转换,适用于单个 URL 组件或完整 URL。
本工具使用四个标准 JavaScript 函数:
所有转换均兼容 UTF-8,因此带重音符号的字母、表情符号以及非拉丁文字都能被正确处理。没有任何内容被上传或存储,也不发起任何 API 调用。
以下是 URL 编码在实际操作中的一些具体示例:
将工具切换到解码模式,粘贴上述任意编码字符串,即可看到原始文本被精确还原。
选择正确的模式非常重要,因为两种编码器对保留字符的处理方式不同。
当编码要插入 URL 中的单个值时,请使用组件模式(encodeURIComponent / decodeURIComponent)— 例如查询参数的值、路径段或片段值。组件模式会对保留字符(: / ? # [ ] @ ! $ & ' ( ) * + , ; =)进行百分比编码,防止它们意外更改周围 URL 的结构。
当您已有完整的 URL(如 https://example.com/path?query=value#fragment),只想对不安全字符(如空格或非 ASCII 字符)进行转义,而不影响结构性保留字符时,请使用完整 URL 模式(encodeURI / decodeURI)。
一个常见错误是对本应作为查询参数的值使用 encodeURI。保留字符不会被编码,可能破坏周围的 URL。如有疑问,请用 encodeURIComponent 对每个查询值进行编码,再拼接完整 URL。
百分比编码(也称 URL 编码)是在 URL 中表示保留字符(具有结构意义)或根本不允许出现的字符的方法。每个不安全字节写作百分号后跟两位十六进制数字,例如空格写为 %20、斜杠写为 %2F、问号写为 %3F。
编码以字节为单位,而非直接以字符为单位。现代 URL 会先用 UTF-8 将字符转换为字节,因此一个带重音的字母可能产生两个百分比编码字节,一个表情符号可能产生四个字节。本工具始终使用 UTF-8,确保编码后的字符串与整个 Web 互操作。
百分比编码由 RFC 3986 定义。这里使用的原生 JavaScript 函数实现了该规范,因此在任何现代浏览器中用 encodeURIComponent 编码的值都能在任何地方用 decodeURIComponent 正确解码。
每当需要将文本安全地放入或取出 URL 时,本工具都大有用处。常见场景包括:
由于本工具完全在浏览器中运行,也适合处理不想提交到远程服务的敏感 URL(内部链接、令牌、签名 URL)。
URL 编码和 URL 清理是两种不同的操作,经常被混淆。
URL 编码(本工具)将字符转换为 URL 安全的百分比编码形式,并可逆转该操作。URL 结构保持不变,既不添加也不删除任何内容。
URL 清理(另一类工具)从 URL 中删除 utm_source、utm_medium、fbclid、gclid 等追踪参数及类似查询键,使结果链接不再包含追踪元数据。URL 清理会修改 URL 中的参数,而编码不会。
若要删除追踪参数,需要使用专门的 URL 清理工具。若要将文本编码或解码为百分比编码形式,本工具才是正确选择。
URL 编码器将 URL 中的保留字符或不安全字符转换为百分比编码序列(例如空格变为 %20)。URL 解码器执行反向操作,还原原始字符。本页面支持双向转换,适用于单个 URL 组件和完整 URL,全部在浏览器中完成。
URL 编码是将 URL 中具有特殊意义或根本不允许出现的字符替换为百分比编码序列的过程。每个不安全字节写作百分号后跟两位十六进制数字。URL 编码也称百分比编码,由 RFC 3986 定义。
百分比编码是 URL 用来表示不安全或保留字符的编码方案。字符首先被转换为一个或多个字节(现代 URL 使用 UTF-8),每个字节写作百分号加两位十六进制值。例如,空格对应字节 0x20,写为 %20。
当编码要插入 URL 的单个值时,请使用 encodeURIComponent — 通常是查询参数的值、路径段或片段值。该函数会对 /、?、#、& 和 = 等保留字符进行百分比编码,防止其意外改变周围 URL 的结构。当您已有完整 URL,只想对不安全字符(如空格或非 ASCII 字符)进行转义而不影响结构性保留字符时,请使用 encodeURI。
两者都可以表示空格,但适用于不同场景。%20 是空格的标准百分比编码,在 URL 任意位置均有效。+ 仅在 application/x-www-form-urlencoded 数据中被解释为空格 — 通常是 HTML 表单提交的正文或部分旧系统生成的查询字符串。原生函数 decodeURIComponent 和 decodeURI 不会将 + 转换为空格,本工具遵循同样严格的行为:+ 将原样保留。如果您在解码表单数据且需要将 + 视为空格,请在解码前手动将 + 替换为空格。
可以。将已编码的查询字符串(或单个编码值)粘贴到输入框,将方向切换为解码。对于单个参数值,请使用组件模式;若要解码整个 URL,请使用完整 URL 模式。请注意,本工具不会将查询字符串拆分为键/值对 — 它只对您粘贴的文本中的百分比编码字符进行解码。
支持。原生 JavaScript 函数将百分比编码序列视为 UTF-8 字节,因此带重音的字母、表情符号和非拉丁文字都能被正确解码还原。例如 caf%C3%A9 解码为 café,%F0%9F%98%80 解码为 😀。如果序列不是有效的 UTF-8,解码器会报告输入格式错误,而非静默生成替换字符。
不会。编码器和解码器完全在您的浏览器中运行,使用 JavaScript 原生 URL 函数。您的输入绝不会发送到服务器,也不会被存储或记录。关闭标签页即清除所有内容。因此,本工具也适合处理不想提交到远程服务的敏感 URL(内部链接、令牌、签名 URL)。
不是。URL 编码将字符在百分比编码形式与原始形式之间相互转换,不改变现有参数的内容。URL 清理是另一种操作,用于从 URL 中删除 utm_source、utm_medium、fbclid、gclid 等追踪参数。如果需要从链接中移除追踪器,请使用专门的 URL 清理工具;本页面只负责编码和解码。
如果原始 URL 经过了二次编码(双重编码),一次解码只能消除一层。例如,%2520 解码为 %20,再解码一次才变成空格。如果结果看起来仍是编码状态,请再次通过解码器处理。不属于有效转义序列的字面百分号(例如 abc%)属于无效百分比编码,解码器将报错而非猜测。
免费在线工具,用于转换、编码和处理文本