URL 编码 / 解码

FAQ

URL 编码和解码工具可以做什么?

该工具用于在 URL 编码(Encode)和解码(Decode)之间进行双向转换。

  • URL 编码:将文本中的特殊字符转换为 %XX 形式的安全传输格式
  • URL 解码:将 %XX 编码还原为原始可读文本
  • 适用于 URL 参数、中文路径、API 请求和前端开发场景

什么是 URL 编码?每一步是如何工作的?

URL 编码(Percent-Encoding)是一种用于在 URL 中安全传输字符的机制。 工作原理如下:

  • 将字符串转换为 UTF-8 字节序列
  • 将每个字节转换为十六进制表示
  • 在前面加上 % 符号形成 %XX 格式

编码规则说明:

  • 字母和数字(A–Z, a–z, 0–9)通常保持不变
  • 空格通常会被编码为 %20(或在表单中变为 +)
  • 中文、符号等非 ASCII 字符会被编码为多个 %XX

示例:

  • 原始文本:Hello World
  • 编码结果:Hello%20World

什么是 URL 解码?+ 号会被当作空格吗?

URL 解码是 URL 编码的逆向过程,用于将 %XX 格式还原为原始文本。 解码规则如下:

  • %XX 会被解析为对应的字节并还原为字符
  • + 号在 query string(查询参数)中通常表示空格
  • 因此本工具在解码时会自动将 + 转换为空格,以兼容表单提交格式

示例:

  • 输入:Hello%20World
  • 输出:Hello World

为什么 URL 需要编码?

URL 编码的目的是保证数据在网络传输中的安全性和一致性。 原因包括:

  • URL 只能安全传输 ASCII 字符
  • 特殊字符(如 ?, &, =, #)会影响 URL 结构解析
  • 中文和非 ASCII 字符在网络中无法直接传输

因此需要通过编码将所有不安全字符转换为 %XX 格式

哪些字符会被 URL 编码?

以下类型字符通常会被编码:

  • 空格(→ %20 或 +)
  • 中文、日文、韩文等非 ASCII 字符
  • 标点符号(如 ?, &, =, #, %, /)
  • 控制字符(不可见字符)

而以下字符通常不会被编码:

  • 英文大小写字母
  • 数字 0–9
  • 少部分安全符号(如 - _ . ~)

输入内容会上传到服务器吗?

不会。

  • 所有编码与解码操作均在浏览器本地完成
  • 不会发送任何网络请求
  • 不会存储或记录用户输入内容
  • 适用于处理敏感 URL、Token 或 API 参数