URL 编码/解码工具

工具说明

URL编码(也称为百分号编码或Percent-encoding)是一种机制,用于在统一资源定位符(URL)中编码特定字符。它基于RFC 3986标准,主要用于确保URL可以在不同的系统和应用程序之间正确传输和解析。

主要功能:
  • 支持标准URL编码(encodeURIComponent)
  • 支持标准URL解码(decodeURIComponent)
  • 实时结果显示和错误提示
  • 支持任意长度文本数据的编码解码
  • 提供性能信息(计算耗时)
  • 适用于网络传输、参数传递等场景
使用提醒
  • URL编码主要用于处理URL中的特殊字符,确保传输正确性
  • 编码和解码操作是可逆的,不会丢失原始信息
  • 编码后的数据长度通常会增加,特别是对于非ASCII字符
  • 解码操作只能对已编码的数据进行,对未编码数据解码可能导致错误
  • 连续编码或解码可能导致数据错误
支持任意文本内容
选择编码方式
URL编码说明
  • 编码标准:RFC 3986
  • 别名:百分号编码(Percent-encoding)
  • 编码原理:将特殊字符替换为%加上两位十六进制数字
  • 编码范围:非字母数字字符和保留字符
  • 保留字符:; / ? : @ & = + $ , # [ ]
  • 非保留字符:A-Z a-z 0-9 - _ . ~
  • 空格编码:空格编码为%20
  • 中文编码:UTF-8编码后以%形式表示
  • 主要用途:URL参数、网络传输、表单提交
  • 安全特性:确保数据在网络中正确传输

使用提示:

  • encodeURIComponent适用于URL参数编码
  • encodeURI适用于整个URI编码
  • escape已废弃,不推荐使用
  • 编码后的内容长度通常会增加
  • 连续编码或解码可能导致数据错误
应用场景
  • URL参数传递
  • 网络数据传输
  • 表单数据提交
  • AJAX请求参数
  • API接口调用
  • Cookie数据存储
  • 网页地址栏参数
常见问题

encodeURI用于对整个URI进行编码,不会编码URI中的保留字符(; / ? : @ & = + $ , #);encodeURIComponent用于对URI的组件进行编码,会对所有非字母数字字符进行编码。在处理URL参数时,应该使用encodeURIComponent。

URL编码的主要目的是确保URL可以在不同的系统和应用程序之间正确传输和解析。URL中有一些字符具有特殊含义(如空格、百分号、加号等),直接出现在URL中可能会引起歧义或错误。通过URL编码,这些特殊字符会被替换为%加上两位十六进制数字的形式。

escape函数已被废弃,不推荐使用。它已经被encodeURIComponent和encodeURI取代。如果遇到需要使用escape的场景,应该改用encodeURIComponent或encodeURI。escape主要用于处理非URL场景的字符串编码。