URL 编码 / 解码
对 URL 和 URL 组件进行百分号编码和解码,UTF-8 安全。
如何使用 URL 编码
- 01
粘贴你的文本或 URL。
- 02
选择编码或解码,以及组件或完整 URL 范围。
- 03
复制结果。
百分比编码的作用是什么
URL 只允许包含有限的字符集,因此该集之外的任何字符、空格、重音字母和保留符号(如 & ?) / =,必须转义。百分比编码用百分号及其两位十六进制值替换每个此类字节,因此空格变为 %20,& 符号变为 %26。
该工具将文本和 URL 编码为百分比编码形式,然后将其解码回来。它基于浏览器的标准encodeURIComponent 和encodeURI 函数构建,因此输出与您自己的JavaScript 生成的内容完全匹配,并且对于国际文本来说它是UTF-8 安全的。
编码和解码完全在浏览器中运行,因此您粘贴的任何内容都不会发送到服务器,当 URL 包含您不想共享的令牌或查询参数时,这会让人放心。
组件模式与完整 URL
范围切换很重要。组件模式 (encodeURIComponent) 转义保留字符,如 & = ? / 是您想要的单个查询字符串值或路径段。完整 URL 模式 (encodeURI) 保持结构字符完整,因此完整 URL 保持可用。
要避免的常见错误
一个常见的错误是使用组件模式对整个 URL 进行编码,从而转义 :// 和 ?并断开链接。另一种是双重编码,即已编码的字符串再次编码,%20 变成 %2520。如有疑问,请先解码以查看原始值。
查询字符串中的加号怪癖
查询字符串中还存在一个历史怪癖:表单提交将空格编码为加号,而百分比编码使用 %20。两者都在野外出现,因此解码器通常接受其中之一。
常见问题
组件与完整 URL 有何区别?
“组件”(encodeURIComponent)会转义 & = ? / 等保留字符,适用于查询值。“完整 URL”(encodeURI)会保留 URL 结构。
为什么解码失败?
格式错误的百分号序列(如单独的 %)无法解码。请检查输入,或先重新编码。