Tool Detail
URL 编解码
URL Encode/Decode。
使用说明
这个工具能做什么
把文本编码成可以安全放进 URL 的形式(URL Encode),或把已编码的 URL 片段还原成原文(URL Decode)。编码基于 encodeURIComponent,遵循 RFC 3986 的百分号编码规则:除字母、数字和 - _ . ! ~ * ' ( ) 外,其余字符都会转成 %XX 形式。
怎么用
- 在「模式」里选择
URL Encode或URL Decode - 把内容粘到输入框,结果会实时显示在下方
- 点「复制」拿到结果;需要发给别人时点「分享链接」,输入内容会带进链接
所有处理都在浏览器本地完成,不经过服务器。
延伸阅读
常见问题
为什么空格变成了 %20,而不是 +?
+ 表示空格是 application/x-www-form-urlencoded 表单提交时的老约定;URL 路径和查询串的通用标准(RFC 3986)用的是 %20。本工具按标准输出 %20。如果你的目标系统要求 +(某些表单接口),需要手动替换。
encodeURIComponent 和 encodeURI 有什么区别?
encodeURIComponent 会把 / ? & = : # 这些分隔符也编码,适合编码单个参数值;encodeURI 保留这些分隔符,适合编码整条 URL。本工具用的是前者。所以不要把整条带参数的 URL 丢进来编码——那样 ? 和 & 会被编码掉,链接就失效了。
中文和 emoji 会被编成什么?
按 UTF-8 多字节编码。"中" → %E4%B8%AD(三个字节,三个 %XX)。emoji 通常是 4 字节(如 😀 → %F0%9F%98%80)。所以一个中文字符在编码后会明显变长,这是正常的。
解码时报错 URIError 怎么办?
说明串里有不合法的百分号序列,常见原因:% 后面不是两位十六进制,或内容被二次编码(% 自己变成了 %25)。先确认是不是重复编码,需要解码两次才能还原。另外,如果串里本来就有裸 %(比如进度 "50%"),解码前要先把它编码成 %25。
为什么我的链接编码后打不开了?
多半是把整条 URL 都编码了。正确做法是只对参数值编码,拼回 URL 时保留 https://、?、&、= 这些结构字符。
数据会上传到服务器吗?
不会。编码/解码完全在本地浏览器内存中完成,没有网络请求。