URL 编码/解码

转换器

对字符串进行百分号编码或反向解码,自动处理保留字符与中文。适合拼接含特殊符号的查询参数、还原被编码的 URL 片段,避免问号、井号、空格与 & 符号破坏路由解析,前后端联调表单、搜索参数与回调地址时必备。

就绪
解码后 URL
0 字符
编码后 URL
0 字符

关于 URL 编码/解码

URL 编码解码工具遵循 RFC 3986 标准实现 URL 的百分号编码与解码双向转换。百分号编码将 URL 中不安全的字符(空格、中文、特殊符号等)转换为百分号加两位十六进制形式,使 URL 可以安全地包含任意 Unicode 字符。支持 encodeURIComponent(编码整个 URL 组件,编码更多保留字符如 & = ? #)和 encodeURI(编码完整 URL,保留冒号和斜杠等结构字符)两种模式。适用于构建查询参数、编码 API 请求路径和处理含中文的 URL。支持 Component 和 URI 两种编码模式切换,自动识别已编码字符串并提供解码结果预览。所有编码解码在浏览器本地完成,URL 字符串不会上传服务器,可放心处理含 token 和密钥的请求参数。

使用方法

  1. 打开 URL 编码/解码 工具页面
  2. 根据需求输入或粘贴数据到输入区域
  3. 查看实时处理结果,使用复制按钮获取输出

使用场景

  • 查询参数构造 — 把用户输入(中文、特殊字符)拼接到 URL 时必须先编码,否则后端解析出错。
  • 调试 GET 请求 — 从浏览器 Network 面板复制的 URL 编码后看不出原文,本工具可还原。
  • 处理特殊文件名 — 上传带空格、中文的文件名时,HTTP 路径里需要编码后才能正确路由。
  • OAuth 回调 URL — redirect_uri 参数本身是 URL,作为查询参数时需要二次编码。
  • 邮件链接 — 在 mailto: 链接里塞预填的主题或正文,特殊字符必须 URL 编码。

常见问题

URL 编码和 HTML 实体编码有什么区别?

完全不同。URL 编码用 %XX 表示字节(如 空格 → %20),HTML 实体编码用 & 加名字(如 < → &lt;)。前者用于 URL,后者用于 HTML 正文。

为什么空格有时编码成 +,有时是 %20?

application/x-www-form-urlencoded(表单提交)用 + 表示空格,URL 路径和大多数现代场景用 %20。本工具默认 %20。

需要编码哪些字符?

RFC 3986 定义的"非保留字符"(A-Z、a-z、0-9、- _ . ~)不用编码,其他都建议编码。但 ?#&= 在不同位置含义不同——查询参数里要编码,作为分隔符不要。

编码两次会怎样?

会出现 %25XX 这种"编码的百分号",解码一次只解一层。这是后端最常见的 bug——确认前端编码一次即可,别叠加。

URL 里能直接放中文吗?

现代浏览器地址栏显示中文,但底层会自动编码为 UTF-8 字节再 %XX。在代码里手动构造 URL 时仍需主动编码。

有浏览器兼容性要求吗?

本工具兼容所有现代浏览器(Chrome、Firefox、Edge、Safari),无需安装任何插件或扩展。

可以离线使用吗?

首次加载后,部分功能在离线状态下仍可使用。页面资源加载后,核心逻辑完全在浏览器本地运行,不依赖网络。

广告

评论与讨论

还没有评论,来抢沙发吧!

评论仅保存在你的浏览器本地,切换设备后不可见。配置 Giscus 后可支持云端评论。