URL编码

URL编码和解码

免费在线工具
Loading…

使用说明

  1. 在输入框输入需要编码的文本或 URL 片段。
  2. 点击「编码(Encode)」将特殊字符转换为 %xx 格式。
  3. 或粘贴已编码的字符串,点击「解码(Decode)」还原原始字符。
  4. 可选择对整个 URL 编码或仅对查询参数值编码。
  5. 点击复制按钮获取结果。

功能介绍

  • 支持 URL 编码(encodeURIComponent)和全 URL 编码(encodeURI)两种模式
  • 支持 URL 解码(decodeURIComponent / decodeURI)
  • 正确处理中文、Emoji 等 Unicode 字符的 UTF-8 编码
  • 实时转换,输入即刷新
  • 一键复制结果

使用场景

含中文参数的 URL 构建
构建包含中文搜索词、标题等参数的 URL 时,对参数值进行编码确保 URL 合法且跨浏览器兼容。
API 请求参数编码
手动构建 API 查询字符串时,对含特殊字符(&、=、+等)的参数值进行 URL 编码,防止参数解析错误。
浏览器地址栏 URL 解码
将浏览器地址栏中显示的 %xx 编码 URL 解码为可读的中文或特殊字符,方便查看和调试。
爬虫与数据采集
解析爬取到的已编码 URL,提取其中的关键词或参数,或对构造的请求 URL 进行正确编码。

常见问题

encodeURI 和 encodeURIComponent 有什么区别?
encodeURI 用于编码完整 URL,保留 :、/、?、# 等 URL 结构字符;encodeURIComponent 用于编码 URL 的某个组成部分(如查询参数值),会编码更多字符包括 /、? 等。
为什么空格编码后有时是 %20,有时是 +?
%20 是标准 URL 编码中空格的表示;+ 是 HTML 表单(application/x-www-form-urlencoded)中空格的替代表示,仅适用于查询字符串,不适用于路径部分。
中文字符如何被 URL 编码?
中文字符先以 UTF-8 编码为多字节序列,每个字节再用 %xx 格式表示。例如「你好」编码为 %E4%BD%A0%E5%A5%BD(共 6 个字节,12 个字符)。
所有特殊字符都需要 URL 编码吗?
不是。URL 中允许未编码的字符称为「保留字符」(Reserved Characters),如 - _ . ! ~ * ' ( )。只有不在此列表中的字符才需要编码。具体规则参见 RFC 3986。