开发web服务中,发现当url中含有空格时,会报 400 error: bad request sytanx,经分析,url中含有特殊字符时,服务端可能无法识别。如+,空格,/,?,%,#,&,=等。该如何破呢?
应当使用字符转义,将特殊字符进行编码表示。编码格式是:% + 对应字符的ascii码。
+ URL 中+号表示空格 %2B
空格 URL中的空格可以用+号或者编码 %20
/ 分隔目录和子目录 %2F
? 分隔实际的URL和参数 %3F
% 指定特殊字符 %25
# 表示书签 %23
& URL 中指定的参数间的分隔符 %26
= URL 中指定参数的值 %3D
将特殊字符replace成转义编码即可
参考:https://blog.csdn.net/luo_deng/article/details/12186535