跳到正文
SPCXTools

URL 编码/解码

将文本进行百分号编码以用于 URL,或将已编码的 URL 和查询字符串解码为可读文本。

本地运行——文件不会离开你的设备

正在加载工具…

如何使用URL 编码/解码

  1. 1选择 编码 以确保文本在 URL 中安全使用,或选择 解码 将 %20 格式的序列还原为文本。
  2. 2若要处理单个参数值或路径段,请选择 组件 模式;若要保留 /、? 和 & 等字符,请选择 完整 URL 模式。
  3. 3处理 HTML 表单数据 (application/x-www-form-urlencoded) 时,请勾选 空格转为 +。
  4. 4粘贴您的文本,结果会立即显示。在解码模式下,查询参数将以表格形式列出。
  5. 5一键复制输出结果。

安全地编码和解码 URL

URL 只能包含有限的字符集。空格、带重音的字母、表情符号以及 &、= 或 # 等符号必须进行 百分号编码(即写成 % 后跟两个十六进制数字的形式),才能出现在 URL 中。本工具可将文本与这种格式相互转换。所有操作都在您的浏览器中运行,因此您粘贴的 URL(包括其中可能包含的令牌或个人数据)绝不会被发送到服务器。

功能特性

  • 两种编码范围:可编码单个值(组件),也可在保留结构的同时编码整个 URL。
  • 表单风格编码:可选择将空格编码为 +,或将 + 解码回空格。
  • 支持 UTF-8:兼容所有语言和表情符号。
  • 查询字符串查看器:解码 URL 时,每个参数都会以键/值对的形式显示,使冗长的跟踪链接和 API 调用一目了然。
  • 即时输出:一键复制结果,并可通过模式切换将结果移至输入框,方便进行往返转换。

何时需要 URL 编码

构建 API 请求。 如果搜索词或筛选值包含空格或符号,则必须先进行编码,然后再添加到查询字符串中。否则,值中的 & 或 = 可能会被误读为新参数的开始。

解析跟踪和重定向链接。 营销链接和登录重定向通常会将一个完整的 URL 编码在另一个 URL 中。通过解码,您可以查看链接的真实目标地址及其携带的参数。

调试网页表单。 表单提交时,字段会以 & 连接的 key=value 键值对形式进行编码,其中空格表示为 +。解码原始请求体可以清楚地看到提交的确切内容。

分享包含非英文字符的链接。 浏览器会友好地显示 https://example.com/東京,但实际请求使用的是 %E6%9D%B1%E4%BA%AC。通过编码可以查看服务器接收到的真实形式。

保留字符和非保留字符

RFC 3986 定义了无需编码的 非保留字符:字母、数字、-、.、_ 和 ~。保留字符 — : / ? # [ ] @ ! $ & ' ( ) * + , ; = — 在 URL 中具有特殊含义,当它们作为值的一部分出现时必须进行编码。其他所有字符,包括空格和所有非 ASCII 字符,都始终需要编码。

URL 编码不同于 Base64 编码。如果您需要传输二进制数据或希望得到一个仅包含字母的紧凑表示形式,请使用 Base64 编码器 —— 在 Base64URL 模式下,其输出结果可以直接安全地放入 URL 中。

常见问题

组件模式和完整 URL 模式有什么区别?
组件 模式会编码所有在 URL 中有特殊含义的字符,包括 / ? & = #。它适用于单个查询值。完整 URL 模式则会保留这些结构性字符,只编码无效的字符(如空格和非 ASCII 字母),从而使完整的 URL 保持可用。
为什么空格有时是 %20,有时是 +?
在 URL 路径和大多数现代 API 中,空格被编码为 %20。而使用默认内容类型提交的 HTML 表单,在查询字符串中会将空格编码为 +。这两种情况都很常见;勾选 空格转为 + 即可匹配表单的编码方式。
为什么解码时会出错?
当 % 后面没有跟两个十六进制数字,或者字节序列无法构成有效的 UTF-8 字符时,解码就会失败。这通常发生在文本被部分编码或重复编码的情况下。请检查是否存在多余的 % 符号。
非英文字符是如何编码的?
它们首先被转换为 UTF-8 字节,然后每个字节都变成 %XX 的形式。例如,“é” 变成 %C3%A9,“東” 变成 %E6%9D%B1。
我的数据会被发送到别处吗?
不会。编码和解码过程使用浏览器内置功能,完全在您的设备上运行。