URL 编码 / 解码

编码模式
推荐:对参数值、路径片段编码
输入
示例:
输出

常见场景

两种模式的区别

encodeURIComponent(推荐)

对几乎所有字符编码,仅保留 A-Z a-z 0-9 - _ . ! ~ * ' ( )

适用于:URL 参数值、路径片段

hello world → hello%20world

encodeURI

保留 URL 结构字符 : / ? # [ ] @ ! $ & ' ( ) * + , ; =

适用于:完整 URL 字符串

https://a.com/b c → https://a.com/b%20c

使用说明

URL 编码(也称百分号编码,Percent-Encoding)用于将 URL 中的特殊字符和非 ASCII 字符(如中文)转换为 % 开头的十六进制形式,保证链接在传输中不被截断或误解析。本工具支持 encodeURIComponent 和 encodeURI 两种模式的编码与解码。

常见用途:构造带中文参数的 GET 请求、解析浏览器地址栏中乱码状的 %E4%B8%AD 形式参数、调试爬虫或接口请求。所有处理均在本地浏览器完成,输入内容不会上传。

常见问题

encodeURIComponent 和 encodeURI 该用哪个?

编码单个参数值(如搜索关键词)用 encodeURIComponent,它会编码 & = ? 等字符,避免破坏参数结构;编码完整 URL 用 encodeURI,它保留 :// ? & 等 URL 结构字符。

为什么中文会变成 %E4%B8%AD 这种形式?

URL 标准只允许 ASCII 字符,中文等多字节字符会先按 UTF-8 编码成字节序列,每个字节再表示为 % 加两位十六进制。一个汉字通常占 3 个字节,对应 9 个字符。

解码时报错或出现乱码怎么办?

常见原因是文本被重复编码(需要多次解码)或包含不完整的 % 序列。可尝试多次点击解码;如果源数据不是 UTF-8 编码(如 GBK),标准解码会乱码,需用对应字符集处理。

相关工具