在get请求参数中如果包含&符号,在发送请求时就会被当作参数的分割符处理
比如请求参数:var url= "xxxx?name=" + "aaa&bbb"
期望的请求参数应该是name = aaa&bbb
实际的请求参数会变成 name = aaa 和 bbb=
处理方法
在拼接参数的时候,使用 encodeURIComponent() 进行手动转义。var url= "xxxx?name=" + encodeURIComponent("aaa&bbb")
特殊特殊字符的含义
| 字符 | 特殊字符的含义 | URL编码 |
|---|---|---|
| + | URL 中+号表示空格 | %2B |
| 空格 | URL中的空格可以用+号或者编码 | %20 |
| / | 分隔目录和子目录 | %2F |
| ? | 分隔实际的 URL 和参数 | %3F |
| % | 指定特殊字符 | %25 |
| # | 表示书签 | %23 |
| & | URL 中指定的参数间的分隔符 | %26 |
| = | URL 中指定参数的值 | %3D |
