🔗 URL 编解码

百分号编码 / 解码

关于「URL 编解码」

把带中文或特殊字符的链接转成安全的百分号编码,或把捕获到的编码链接还原成可读文本,处理查询参数时很常用。

常见问题

encodeURI 和 encodeURIComponent 有什么区别?

encodeURI 保留 : / ? & = 等 URL 结构字符,适合编码整条链接;encodeURIComponent 会把它们一并编码,适合编码单个参数值。

为什么空格变成了 %20 或加号?

URL 路径里的空格编码为 %20,而表单提交(application/x-www-form-urlencoded)中习惯用加号表示空格,两者是不同场景的约定。

中文链接必须编码吗?

规范上需要。中文属于非 ASCII 字符,浏览器会按 UTF-8 转成百分号编码后发送,手工拼参数时容易出现编码不一致的问题。