URL Encode / Decode,处理中文参数与特殊字符。

切换工具
encodeURIComponent — 编码所有特殊字符,适合参数值
输入文本
编码结果

使用说明

用途

URL 在线编码解码工具(URL Encode / URL Decode / Percent Encoding),把 URL 中的特殊字符(中文、空格、& ? = / 等)按 RFC 3986 标准转成 %XX 形式,反之亦然。支持完整 URL 模式(仅编码 query 部分保留协议主机)、组件模式(整段字符串都编码)、双重编码(已编码再编一次,用于嵌套 redirect URL)。同时支持选编码字符集 UTF-8 / GBK,适配不同后端系统。所有处理在浏览器本地完成。

操作步骤

  1. 粘贴 URL 或字符串到编辑器
  2. 选模式:完整 URL(智能保留协议、主机、路径分隔符)/ 组件(整段都编码)
  3. 点「编码」生成百分号编码串
  4. 反向:粘贴 %XX 形式自动解码
  5. 字符集:UTF-8(默认,国际标准)/ GBK(部分中文后端遗留)
  6. 双重编码:用于嵌套场景(如 OAuth 跳转目标 URL 已编码再放进父 URL)
  7. 批量:每行一个 URL,逐行编码 / 解码
  8. 常见已编码字符快速参考:%20=空格 %2F=/ %3F=? %3D=...

常见问题

URL 里的中文要不要编码?
现代浏览器地址栏会自动编码显示,但程序里处理 URL(fetch / axios / 后端转发)必须主动编码,否则会被截断或解析错乱。RFC 3986 规定 URL 必须是 ASCII,中文必须按 UTF-8 编码为 %E4%B8%AD%E6%96%87 形式。
URL 编码和 Base64 有什么区别?什么时候用哪个?
URL 编码只对不安全字符做 %XX 替换,保留大部分 ASCII;Base64 对所有字节做 4/3 倍率编码。URL 编码用于 URL / query / form data;Base64 用于嵌入二进制到文本(图片 Data URL / JSON 传文件)。两者不可互换。
GBK 编码的 URL 在 UTF-8 工具解码出来乱码?
老的中文系统(部分政府 / 银行 / 早期 PHP)用 GBK 编码 URL,比如 %D6%D0%B9%FA = "中国"。本工具切换到 GBK 字符集即可正确解码。如果不确定字符集,对比 %E4%B8%AD(UTF-8)和 %D6%D0(GBK)开头 3 字节就能区分。
+ 号在 URL 里是空格还是加号?
在 query string(? 之后)里,+ 代表空格(来自 application/x-www-form-urlencoded 规范);在 URL 其他部分,+ 是字面加号。本工具在「完整 URL」模式会正确区分位置。如果你的 URL 里有真实的 + 字符想保留,需编码为 %2B。
为什么 OAuth callback URL 看起来嵌套编码了好几层?
是双重 / 三重编码。父 URL 的 query 包含子 URL 时,子 URL 必须先整体编码再作为 query 值。如果中间还有 redirect,可能编码三次。本工具的「双重编码」选项可手动控制层级,调试时反向多次解码就能看清原始 URL。

应用场景

  • 调试 OAuth 跳转:拿到嵌套编码的 redirect_uri 多次解码看真实目标
  • API 拼 URL:前端把含中文 / 特殊字符的搜索词放进 query 参数前先编码
  • 导出二维码链接:含中文的网址生成二维码前先编码确保扫码后能打开
  • 排查老系统中文乱码:检查是 UTF-8 还是 GBK 编码差异
  • 邮件 mailto 链接:mailto:?subject= 后面的中文主题必须编码

适用场景

调试 OAuth redirect、前端拼接含中文的 URL、生成二维码链接、排查老系统中文乱码、邮件 mailto 链接。前端、后端、安全分析、运营常用。完整 URL 智能模式、UTF-8/GBK 字符集切换、双重编码处理是关键差异点。