Volade 生态系统 — 网页工具

URL 编码解码器

把任意文本或 URL 编码为 percent-encoding(RFC 3986),再即时解码还原——组件、查询字符串、路径片段或完整 URL 四种范围,空格用 %20 或 +,UTF-8 编码,完整的 URL 与参数解析、query string 编辑器,以及 Base64、HTML 实体和十六进制之间的交叉转换。免费、无需注册、100 % 本地运行:数据不会离开您的浏览器。

6 种转换模式0 字节被发往服务器∞ 次转换,无大小限制
本工具

您的在线 URL 编码解码器

粘贴文本、已编码的 URL 或查询字符串:每输入一个字符结果就同步更新,无需点击「转换」按钮。

URL 编码解码器

在线 开发、代码 & 数据
登录
快捷键: Ctrl+Enter 转换
就绪。
输入时即时完成转换 · Ctrl+Enter 转换当前标签页 · percent-encoding 遵循 RFC 3986 · 100 % 本地运行,数据不会离开您的设备。
0,0 0说明 全部工具
免费版还是 Premium?

URL 编码解码器免费且无限制:无需账户、无需安装、不发送任何网络请求。Premium 可解锁 Volade 全套生态。

免费实时 percent-encoding,4 种范围,UTF-8
免费URL 解析、参数解码、query string 编辑器
免费Base64、HTML 实体与十六进制交叉转换
Premium历史记录与代码片段的加密云端同步
PremiumAPI 访问权限,以及生态工具间共享的脚本
解锁 Premium
功能

URL 编码、解码与解析,毫无限制

一个引擎搞定文本转义、URL 解析、查询参数与交叉转换——数据始终不离开您的设备。

实时编码与解码 URL

粘贴文本、URL 或参数,输入的同时就能得到 percent-encoding——反过来也一样:粘贴 %XX 字符串即可立刻读出内容。四种编码范围、空格用 %20 或 +、十六进制可选大写或小写、四种字符编码,还附带每条检测序列的详细信息。

立即编码

解析 URL 及其参数

把任意 URL 拆解为协议、用户名、主机、端口、路径、查询和片段,原始值与解码后的值并排显示。query string 中的每个参数都会列出键名、值以及编码后的键值对,参数编辑器随后重建出一条干净、可排序、可直接复制的字符串。

解析 URL

完全私密

不发任何网络请求:编码、解码和解析全部在浏览器中完成,离线也一样。非常适合处理内部 URL、令牌、API 密钥、重定向字符串,以及任何包含你不愿交给他人的标识符的地址。

了解更多
工作原理

三步完成编码、解码或解析

无需安装、无需注册:无论手机还是电脑,工具随时可用。

粘贴你的内容

文本、完整 URL、单个参数或已编码的字符串:粘贴到「编码」「解码」或「解析 URL」标签页即可。已有的 query string 一键就能载入参数编辑器。

调整格式

选择范围——组件、查询字符串、路径片段或完整 URL——以及字符编码、十六进制大小写和空格的处理方式。结果会即时更新,连开销都一并算好。

复制并重复使用

复制结果、下载为 .txt、在标签页之间传递,或分享链接。本地历史会保存最近的转换,一键即可重新载入。

快速参考

一眼看懂 percent-encoding

大多数开发者在转义 URL 前会确认的要点——互动 ASCII 表就在「RFC 3986 & 参考」标签页中。

字符%XX 编码默认范围编码示例
空格%20无a b → a%20b
「+」%2B路径片段、完整 URLa+b → a%2Bb
「&」%26查询字符串、路径片段、完整 URLa&b → a%26b
「=」%3D查询字符串、路径片段、完整 URLa=b → a%3Db
「/」%2F路径片段、完整 URLa/b → a%2Fb
「?」%3F完整 URLa?b → a%3Fb
「#」%23完整 URLa#b → a%23b
「é」%C3%A9无,UTF-8 的 2 个字节été → %C3%A9t%C3%A9

URL 的「编码」和「解码」是什么意思?

URL 编码 (「url encode」「urlencode」)把地址中每个不允许的字符——空格、重音字符、&、加号——转换成一个序列:百分号加上该字节的两位十六进制数字。 URL 解码 (「url decode」「decoder url」)反向读取这些序列:先还原字节,再按声明的编码(通常是 UTF-8)转换成字符。当人们搜索「encoder decoder url」或「percent encoding online」时,找的正是这样一对功能。

percent-encoding 既不是压缩也不是加密:带重音的词会变成两倍长,而且任何人都能一眼读懂。它唯一的作用是让任意字节都能进入 URL,而 URL 默认只接受 ASCII 的一个子集。反过来,Base64 用于在纯文本通道中传输字节——两者看起来相似,却不能互相替代。

如何用 percent-encoding 编码 URL

第 1 步:按所选字符集把文本转换成字节,默认是 UTF-8。第 2 步:逐个字节检查对应字符是否属于所选范围允许的字符列表。第 3 步:如果属于,就原样保留;否则变成 %XX,其中 XX 是该字节的两位十六进制数字。第 4 步:如果「空格转为 + 」选项已启用,字节 32 就会被替换成加号,而不是 %20.

具体示例:「 café & été 」在组件范围下的结果是 caf%C3%A9%20%26%20%C3%A9t%C3%A9。在编码器里输入这段文本:结果、输入大小、输出大小和开销在松开按键之前就已经出现了。

四种编码范围

这个 组件范围 只保留字母、数字和 - _ . ! ~ * ' ( ) :它对应单个参数值,等同于 encodeURIComponent。而 查询字符串 还额外保留 & 和 =,用来重建完整的 query string。而 路径片段 允许加入 / : @ & = + $ , ; ,以免破坏斜杠。而完整 URL 还会额外加入 ?, #, [ 和 ] :几乎什么都不转义,只有空格和非 ASCII 字符会变成 %XX.

如何解码已编码的 URL

解码从左到右扫描字符串:百分号加两位十六进制数字得到一个字节,其他字符按所选编码转换后原样保留。随后字节被分组转换成字符——「é」2 个字节,「日」3 个字节,一个 emoji 4 个字节。「解码」标签页会列出每条检测到的序列、它在字符串中的位置、对应的字节以及还原出的文本。

如果百分号后面没有两位有效数字,错误会明确给出原因:序列不完整或十六进制字符无效。「修正 %」按钮会把孤立的百分号变成 %25,这样字符串就能被解码且不丢失任何信息——处理部分转义的 URL 时,这是最稳妥的做法。

空格:%20 还是 + —— 表单的规则

%20 是严格的 percent-encoding 空格:路径、查询、片段和请求头中都能用。而符号 +,则只在格式 application/x-www-form-urlencoded ,即 HTML 表单以及历来 query string 使用的格式。在其他地方它仍是字面的加号——由于极易混淆,只要对值进行编码,就必须把它转义成 %2B ,只要对值进行编码。

实际用法:要填充表单字段,或复现某个 <form>,请勾选「空格转为 + 」。对于重定向 URL、canonical 或分享链接,请始终选择 %20。解码器则把 + 默认视为空格,你也可以一键关闭这个行为。

RFC 3986:unreserved、sub-delims 与 gen-delims

RFC 3986 把 ASCII 字符分成三类。 非保留字符 ——字母、数字、 - _ . ~ ——始终原样保留。而 次级分隔符 ! $ & ' ( ) * + , ; = 以及 通用分隔符 : / ? # [ ] @ 具有结构含义:它们分隔权威、路径、查询和片段。其余一切——空格、引号、尖括号、花括号、百分号——都必须编码。

这些类别正是「RFC 3986 & 参考」标签页逐字符列出的内容:点击任意方块,即可查看它的十六进制编码、所属类别,以及保留它的编码范围。要回答「这个字符需要转义吗?」,这是最快的参考。

重音字符、emoji 与 UTF-8

URL 只传输安全的 ASCII 字节,因此任何超过 U+007F 的字符都必须编码。在 UTF-8 中,「é」的值是 C3 A9 ,会变成 %C3%A9,「日」占 3 个字节,会产生 3 条序列;一个 emoji 占 4 个字节,编码后是 8 个字符。如果结果看起来很长,那不是 bug:这就是兼容所有协议的代价。最后还要留意原始字符集——把 Latin-1 编码的字符串按 UTF-8 解码会得到乱码,这正是「解码」标签页提供四种选项的原因。

为什么 encodeURIComponent 并不总是够用

encodeURIComponent 会编码除 A-Z a-z 0-9 - _ . ! ~ * ' ( )之外的一切,用在参数值上没问题,但会破坏完整 URL,因为它连斜杠、冒号和 & 也一并转义了。 encodeURI 则相反:它保留 URL 结构,却放行空格和重音字符,因此处理纯文本时会失败。这里两种用法都覆盖了——而且不止于此,因为「查询字符串」和「路径片段」两种范围正好弥补了两者之间的差距。

percent-encoding 与 Base64:两种不同的工具

percent-encoding 逐字节替换,保留原文的可读性,代价是长度大幅增加。Base64 每三个字节一组,重写成 64 个字符的字母表:紧凑却完全不可读,没有 URL-safe 变体就不能直接用在 URL 里。「交叉转换」标签页把两者放在同一屏对照,还额外给出十六进制字节、HTML 实体和转义后的 JSON 字符串——复制之前就能选对表示形式。

常见错误:双重编码与孤立的 %

最常见的错误是把同一个字符串转义两次:空格先变成 %20,再变成 %2520,于是服务器收到的字面内容是「%20」。第二个错误是漏掉了百分号本身,它应该变成 %25 ——否则解码器会把它当作序列的开头,导致崩溃或截断。最后,保留一个 + 而不转义地放进表单参数,就等于插入了一个你并没有要求的空格。解码器会标出格式错误的序列,「修正 %」按钮可以无损修复第二种情况。

编码后的 URL 藏在哪里

在 UTM 跟踪 query string 中,在 redirect_uri 和 OAuth 状态中,在 跟踪 query string 中,在 webhooks 中(其目标 URL 带有嵌套参数),在 回调 URL 中,在服务器日志中,在 sitemap 和 canonical 中,在 <a href> 中(客户端生成的),在 JWT 中(payload 使用 Base64URL),在 data: 以及 Location 请求头中,以及任何以 GET 提交的 HTML 表单里。花一秒钟就能完成编码和解码,省得为一个字符串专门打开终端。

性能与最佳实践

在浏览器中,编码和解码都是线性的,即使处理几兆字节也没有明显开销:每个字符只处理一次,既不递归也不逐字符分配内存。唯一的陷阱是双重编码——存储之前务必先做一次往返测试——以及几 KB 的 URL,代理通常会截断超过 2 000 个字符的 URL。请把所用范围标注在生成的字符串旁边:同一段文本,「组件」和「完整 URL」得到的结果并不相同。

推荐人群

前后端开发者(query string、重定向、OAuth)、集成与技术写作者(UTM 链接、canonical、跟踪)、管理员与 DevOps(webhook、签名 URL、日志)、测试与渗透测试人员(参数模糊测试、绕过过滤器)、学生(理解 UTF-8、ASCII 与 RFC 3986),以及任何需要 在线 URL 编码解码器 的人:快速、完整、私密——再搭配Base64 编码解码器 和 JSON 格式化器.

常见问题

关于 URL 编码解码器的常见问题

在转义或解码 URL 之前,你想知道的一切。

如何在线编码 URL?

把文本或 URL 粘贴到「编码」标签页,选择范围——组件、查询字符串、路径片段或完整 URL——如果目标是表单,再勾选「空格转为 +」。percent-encoding 会立即显示,同时给出输入大小、输出大小和开销。点击「复制编码后的 URL」即可使用。

如何解码已编码的 URL?

把字符串粘贴到「解码」标签页:%XX 序列会按字节成组读取,再按所选编码(默认 UTF-8)还原成文本。「将 + 视为空格」复选框可复现 HTML 表单的行为,「修正 %」按钮则在解码前修复孤立的百分号。表格会列出每条序列、它的字节和还原出的文本。

%20 和 + 有什么区别?

%20 是严格的 percent-encoding 空格:在路径、查询和片段中处处可用。符号 + 只在 HTML 表单使用的 application/x-www-form-urlencoded 格式里才是空格;在其他地方它仍是字面的加号,而且应当编码为 %2B。如果你是为表单转义参数,请勾选「空格转为 +」;否则请用 %20。

什么是 percent-encoding,它为什么遵循 RFC 3986?

percent-encoding 把 URL 中所有不允许的字符替换成百分号加该字节的两位十六进制数字,例如 UTF-8 下的「é」就是 %C3%A9。RFC 3986 定义了三类字符——非保留字符、次级分隔符和通用分隔符——「RFC 3986 & 参考」标签页会逐个列出它们及其编码。

该编码哪个范围:组件、路径还是完整 URL?

编码单个参数值时用组件范围:任何不是字母数字、也不属于 - _ . ! ~ * ' ( ) 的字符都会变成 %XX,包括 & 和 =。查询字符串保留 & 和 = 分隔符。路径片段保留斜杠和冒号。完整 URL 几乎什么都不动,只有空格和重音字符会变成 %XX。

为什么重音字符会变成 %C3%A9?

因为 URL 只包含安全的 ASCII 字节。在 UTF-8 中,「é」占两个字节:先是 0xC3,再是 0xA9,各自变成一条 %C3%A9 序列。星平面的字符(如 emoji)占四个字节,编码后是八个字符。编码器会自动算出这一切;「交叉转换」标签页把 percent-encoding、Base64、十六进制字节和 HTML 实体并排显示。

这个工具能解析并重建 query string 吗?

可以。「解析 URL」标签页把 URL 拆解为协议、用户名、主机、端口、路径、查询和片段,并逐个列出参数的键名、解码后的值以及编码后的键值对。「查询参数」标签页则反过来:你添加、排序或粘贴键值对,工具就重建出可直接复制的编码字符串。

这个工具会把我的数据发送到服务器吗?

不会:一切都在浏览器里运行,没有网络请求,也不需要账户。可以离线使用,处理内部 URL、令牌、API 密钥或含标识符的重定向地址都没问题。历史记录保存在设备的本地存储中,一键即可清空。

100 % 本地的 URL 编码解码器:数据永不离开您的电脑

与常见的在线 URL 编码器不同,这里不传输任何字符串:编码、解码、URL 解析和参数重建全部在浏览器中完成。因此,即使在飞行模式或公共网络下,也能放心处理内部重定向 URL、签名令牌、连接字符串或代码片段。历史记录与上次输入都保存在本地(localStorage),始终留在您的设备上。

许可证 Volade Premium 提供可选的加密云端同步,独立于工具本身——其余功能依然免费、无限制,无需注册。

一份高级许可证,畅用你的所有网页工具

URL 编码解码器、Base64 编码解码器、JSON 格式化器、各类生成器、PDF 编辑器和数十种免费工具——一份许可证即可畅享 Volade 全部生态。

一个许可证,整个优质生态 浏览器 · CMS · 桌面 · 移动 · 脚本 · API · 工具 · Database
一个许可证,通用于所有 升级到优质版 登录