(#、+ 等字符的编码与解码全攻略)
在开发中,我们常遇到 URL 参数因包含 #
、+
等特殊字符而丢失或被错误解析的问题。如何确保这些字符原样传递到服务端? 本文将用 3 分钟讲透编码与解码的核心方法!
一、为什么需要编码?
URL 有严格的语法规则,部分字符有特殊含义:
- #
:表示页面锚点(片段标识符),浏览器会忽略其后的内容。
- +
:在查询参数中默认表示空格(类似 %20
)。
- &
、=
:分隔参数键值对。
如果不编码,参数会被截断或误解!
二、如何正确编码参数?
1. 客户端编码(发送请求前)
使用 encodeURIComponent()
对参数值编码(不要用...