URL 编码 / 解码工具

对文本做百分号编码 / 解码,解析完整 URL,并在浏览器里重新组装结果。

适合排查查询字符串、对比编码前后的值,或检查在 API 请求和跳转前是否发生了二次编码。

其他语言 日本語 English Español 简体中文

这页可以做什么

文本转换

编码或解码文本

分享链接只保存轻量设置,例如解码模式和 + 的处理方式,不会包含你输入的文本本身。

完整 URL 解析

解析并重建 URL

粘贴完整 URL 或相对路径,拆分为 scheme、host、path、query、fragment,然后编辑查询参数并重新生成最终字符串。

主机
路径 /
查询
片段

解码后的路径预览: /

原始查询字符串:

可编辑的查询参数

什么时候用百分号编码,什么时候用 Base64

百分号编码用于 URL 组件,可以把空格、斜杠、Unicode 字符和其他保留字符安全地放进 path、query 或 fragment。Base64 是把字节转成文本,通常用于传输或嵌入,生成的内容也会更长。

查询参数里的 +

很多表单风格的查询字符串会用 + 表示空格。普通的 decodeURIComponent 不会自动做这个转换,所以这页允许你在调试 query 或表单数据时开启它。

常见的二次编码错误

如果一个值已经编码过,又被编码一次,%20 就会变成 %2520。当你看到很多 %25 时,通常要检查是否经过了两层编码。

常见问题

URL 编码和 Base64 有什么区别?

URL 编码用于转义不能直接放进 URL 组件的字符。Base64 是把字节变成另一套文本字符的可逆表示,它们解决的问题并不一样。

为什么有时会看到 + 而不是 %20?

在表单风格的查询字符串中,+ 常常表示空格。普通的 decodeURIComponent 不会自动把 + 变成空格,所以这页允许你在处理 query 或表单数据时开启这个行为。

什么是二次编码?

就是把已经编码过的文本再次编码。例如 %20 会变成 %2520,因为连百分号本身也被转义了。这往往会导致链接或 API 请求出错。

我输入的 URL 或文本会被上传吗?

不会。编码、解码、解析和重建都在浏览器本地完成。分享链接只保存设置,不保存你输入的文本或 URL。

评论(可选)

为减少加载,评论只在需要时获取。