DevToolkit

URL 编码与解码工具

使用百分号编码对 URL 进行编码和解码

常见问题

什么是 URL 编码?为什么需要它?

URL 编码(也叫百分号编码,Percent-Encoding)用 % 加两位十六进制来表示 URL 中的不安全字符,例如空格被编码为 %20,& 被编码为 %26。这样做是为了让 URL 中可以包含保留字符、非 ASCII 字符(如中文)或二进制数据,而不会与 URL 语法冲突。

这个工具能用来做什么?

主要用途:构造 API 查询参数、修复被多次编码的 URL、解码链接分享里的中文/特殊字符、分析含编码字符串的日志、调试第三方回调 URL。对正在构造 window.location 或 fetch 请求的前端开发者特别有用。

encodeURI 和 encodeURIComponent 有什么区别?

encodeURI 会保留 URL 中的保留字符(如 :、/、?、&),适合编码整段 URL;encodeURIComponent 则编码所有非字母数字字符,适合编码单个参数值。DevToolkit 工具提供两种模式切换,把参数塞进查询字符串时请选 component 模式。

为什么解码后出现乱码?

通常是原字符串不是 UTF-8 编码(旧系统可能使用 GBK、ISO-8859-1),工具默认按 UTF-8 解码会显示乱码。你也可能遇到双重编码(%2520 其实代表 %20),需要解码两次。检查源头系统的编码约定是第一步。

我的 URL 会上传到服务器吗?

不会。所有编码和解码都在你浏览器本地完成,不会记录也不会发送到任何后端。可以放心处理含 Token、Session 或个人信息的 URL。

URL 编码、Base64、HTML 实体编码怎么选?

URL 编码只用于 URL 上下文,字符集最保守;Base64 用来在文本协议中传输任意二进制,字符更紧凑;HTML 实体编码(如 <)是为了在 HTML 中显示本来会被解析为标签的字符。三者场景不同,不能互相替代。

相关工具