把中文和特殊字符转成 %XX 百分号编码,或把一长串 %E4%BD%A0 还原成人话;同时支持整条 URL 与参数值两种转义口径,可批量逐行处理。
数据来自本站商品页公开信息整理,仅供选购参考。
整条 URL 用 encodeURI,单个参数值用 encodeURIComponent。中文、空格、&、#、% 这些字符在 URL 里都有特殊身份,不转义就会被截断或误解。
| 字符 | encodeURI | encodeURIComponent |
|---|---|---|
| 空格 | %20 | %20 |
| 中文 | %E4%BD%A0 | %E4%BD%A0 |
| & = ? # / : | 原样保留 | 转成 %26 %3D %3F %23 等 |
结论:拼参数值一定用 encodeURIComponent;只把中文路径 / 空格转义、保留 URL 结构时用 encodeURI。
& 不会被转义,服务器会把它当成参数分隔符,第二个参数就串到第一个值里了。+ 表示空格(表单编码),路径里 + 就是加号。解码时口径要一致。#,浏览器会把后面全当锚点,服务器根本收不到。这是 UTF-8 字节的百分号编码。中文「你」的 UTF-8 是 3 个字节,每个字节写成 %XX,于是变成 %E4%BD%A0。解码后就是「你」。
encodeURI 保留 : / ? # & = 等 URL 结构字符,适合整条 URL;encodeURIComponent 把这些也转义,适合拼接单个参数值。传参时用错 encodeURI,会导致参数里的 & 把值截断。
在表单编码(application/x-www-form-urlencoded)里,+ 代表空格。URL 路径里的 + 则是普通字符。解码查询参数时需要把 + 先换成 %20 或空格,本工具默认按查询参数规则处理。
因为很多系统会自动做百分号编码,而另一部分系统按原始字节处理。跨系统传链接时建议统一用 encodeURIComponent 处理参数,或直接用本工具转成百分号形式再复制。
# 之后是锚点(fragment),不会发送给服务器。如果你的参数值里含 #,必须先编码成 %23,否则整段会被当成锚点截掉。
可以。每行一条 URL,点「逐行编码 / 解码」即可批量处理,空行保持不变。