URL编码URL解码表单编码百分号编码编码规范前后端
两类常见编码方式
- 百分号编码:
encodeURIComponent将非保留字符外的字符编码为%XY。 - 表单风格:
application/x-www-form-urlencoded会将空格转为+,其他仍用%XY。
为什么常“乱码”?
- 前后端字符集不统一(应统一为 UTF-8)。
- 误把
+当作字面字符,未还原为空格。 - 混用
encodeURI与encodeURIComponent导致保留字符处理差异。
在线工具
- UrlEncode 编码解码:支持默认百分号编码与表单风格(空格→+),实时转换与错误提示。
最佳实践
- 统一字符集为 UTF-8;表单风格下正确处理
+↔ 空格。 - 参数值一律用
encodeURIComponent,整个 URL 可用encodeURI。
FAQ
- 中文参数怎么传? 统一 UTF-8,前端
encodeURIComponent,后端按 UTF-8 解码。 - %20 与 + 有何区别?
%20是空格的百分号编码,+是表单风格对空格的替代。
立即进行编码/解码:/tools/develop/url-encode-decode