实用工具

URL 编码与解码

对参数值做百分号编码,或对整个 URL 编码而不破坏它的结构。

浏览器本地运行编码转换175
免费

输入

0 B50.0 KB 以内免费

结果

结果会显示在这里。

你的运行记录

只有消耗积分的运行才会保存。

登录后可以保留你的运行记录。

最容易踩坑的地方,是「给一个值编码」和「给整个 URL 编码」的区别。给参数值编码会转义那些分隔符 ? & = /,因为在参数内部它们是数据;给整个 URL 编码则会保留这些分隔符,因为它们是结构。两种都在这里,而选错正是链接「差一点就能用」的常见原因。

它是怎么工作的

  • 参数值模式会转义所有非 unreserved 字符,这正是查询值所需要的。
  • 整个 URL 模式会保留赋予 URL 形状的那些保留字符。
  • 解码遇到畸形转义时会报告问题,而不是抛出异常。

你的数据去了哪里

哪也没去。本工具完全在你的浏览器里运行:你粘贴的文本由页面处理,不会传输到任何服务器,也不会写进任何日志。

当一次运行消耗积分时,会向你自己的历史里保存一行摘要,方便回头查找。摘要记录的是这次运行的形态——大小、数量、你查询的值——而不是你粘贴的内容。

它要花多少

单次 50.0 KB 以内免费,无需账号。超出部分每次运行消耗 1 积分,并保存到你的历史记录。

积分来自注册、每日签到、发表评论和完善资料。

了解积分规则

常见问题

什么时候该用参数值模式?
只要文本是要放进参数里的——搜索词、跳转目标、邮箱地址。只要一个值可能含 & 或 =,就必须按参数值编码,否则它会把查询串截断。
空格为什么有时是 %20,有时是 +?
%20 在任何位置都正确。+ 这个约定来自 HTML 表单提交,只在查询串里有效,在路径里绝对无效。本工具始终产出 %20。
中文需要编码吗?
浏览器会直接显示未编码的中文并替你处理,但 URL 被程序传递到的下一环未必如此。编码它总是安全的。

背后的开源项目

本工具是独立实现,并未打包第三方库。unshiftio/querystringify(MIT)在代码层面做的是同一件事——如果你需要在自己的程序里实现它,从那里开始,而不是调用一个网页。

unshiftio/querystringify

也常被称作

  • url编码
  • url解码
  • urlencode在线
  • 百分号编码
  • 中文url转码