跳到主要内容

URL 编解码

encodeURIComponent 与 encodeURI 双模式,中文链接一键转换。

本地计算 · 数据不出浏览器
原文
0 字符1 行0 B
编码结果
转换结果会显示在这里
0 字符1 行0 B

使用说明

这个工具解决什么问题

把中文塞进链接就变成一长串 %E4%B8%AD,想看懂要解码;把参数拼进 URL 报错,是因为 & 和 = 没有转义。这个工具双向覆盖:编码时可选「参数值」与「整条链接」两种口径,避免把 URL 结构一起转掉的经典错误;解码时自动识别并还原中文与特殊字符,残缺输入有明确的中文诊断。

核心能力

双模式编码:component(全转义)与 full(保留结构)按场景选择。智能解码:百分号序列还原,兼容 + 号空格约定。中文全支持:UTF-8 口径,中文链接往返无损。容错诊断:残缺百分号序列不崩溃,原样保留并提示。

使用建议

拼 API 请求前,把每个参数值单独用 component 模式转一遍再拼接;分析别人发来的追踪链接,先解码看真实参数;配合站内「URL 参数对比」工具,可以进一步核对两条链接参数的差异。

常见问题

component 模式和 full 模式有什么区别?

component 模式(encodeURIComponent 口径)转义所有特殊字符,包括 ? & = /,适合编码「参数值」——比如把一段包含 & 的搜索词塞进查询参数;full 模式(encodeURI 口径)保留 URL 结构字符,适合编码「整条链接」,不会把 : // ? 这些结构符转掉。

为什么空格有时变成 %20 有时变成 +?

这是两套历史约定:百分号编码规范用 %20,而 HTML 表单的 application/x-www-form-urlencoded 用 +。本工具按标准百分号编码输出 %20,解码时两种都认识,都能还原成空格。

解码报「残缺的百分号序列」是什么意思?

说明文本里有孤立的 % 没有跟两位十六进制数,例如「100% 完成」里的 %。这不是合法的百分号编码,解码器无法确定你的意图,会把 % 原样保留并给出提示,其余部分正常解码。

Base64 编解码

UTF-8 安全的 Base64 编码与解码,中文与 emoji 不乱码。

Base32/Base58 转换

UTF-8 / Hex / Base32 / Base58 四编码互转,RFC 4648 口径。

文件 Base64

文件与 Base64/Data URI 双向转换,前端内联资源场景。

查看更多编解码,或浏览全部工具。

;