在线 URL 编码与解码工具
把带中文、空格或特殊符号的参数值转成可以安全放进查询字符串的形式,或把已经百分号编码的字符串还原成可读文本。编码遵循 RFC 3986,只保留 A-Z、a-z、0-9 与 - _ . ~ 不编码。
与浏览器的 encodeURIComponent 相比,本工具额外把 ! ' ( ) 也转成百分号形式;空格输出 %20 而不是加号,适合与严格按 RFC 3986 实现的签名算法对接。
输入
结果
编码参考(RFC 3986)
保留字符
! * ' ( ) ; : @ & = + $ , / ? # [ ]
未保留字符
A-Z a-z 0-9 - _ . ~
空格编码
%20(而非 +)
URL 编码与解码 的主要功能
- 一键编码中文、空格、& = ? # 等字符全部转义为百分号形式,可直接拼进 URL。
- 一键解码还原百分号编码文本,遇到非法序列时自动尝试把加号按空格宽松解码。
- RFC 3986 严格模式对 ! ' ( ) 一并编码,与常见签名、鉴权算法的编码规则保持一致。
- 编码字符统计结果下方显示本次共生成多少个编码字符,便于确认转义是否完整。
- 参考表内置页面直接列出保留字符、未保留字符与空格编码规则,不必再翻文档。
- 结果可复制输出框内容一键复制,保留换行与原始顺序。
如何使用URL 编码与解码?
-
输入文本
把待转义的参数值或已编码的字符串粘贴到左侧输入框。
-
点击编码或解码
方向选择正确即可,右侧结果框会立即显示处理后的文本。
-
复制并拼接
点击复制按钮,把结果拼回你的 URL 或签名串中。
URL 编码与解码 常见问题
空格为什么编码成 %20 而不是 +?
百分号编码(RFC 3986)中空格的转义形式是 %20;加号代表空格只出现在 application/x-www-form-urlencoded 的表单编码规则里。工具输出 %20,需要表单风格时可自行把 %20 替换为加号。
encodeURIComponent 和这个工具有什么差别?
encodeURIComponent 不编码 ! ' ( ) 四个字符,本工具会把它们一并编码,因此结果更贴近严格按 RFC 3986 计算签名时的要求。
解码提示失败怎么办?
通常说明字符串中存在不完整的百分号序列(例如落单的 % 或后面不是两位十六进制)。工具会先尝试把加号按空格处理再解码,仍失败时会给出无效编码序列的提示,此时请确认来源是否被二次转义。
中文会被编码成几个字符?
中文以 UTF-8 表示,通常一个汉字对应 3 个字节,即 %E4%B8%AD 这样 9 个字符的百分号编码结果,统计信息中的编码字符数即为百分号序列的个数。
输入的链接会被记录或上传吗?
不会。编码与解码均在浏览器本地完成,不发起任何网络请求。