浏览器 》 服务器
浏览器端只能发送字符串格式的数据,
使用JSON.stringify()
可以对json、数组等格式数据进行序列化,转化为字符串。
但是,数组结果转换后,带有非法字符,比如 [ 、]、" 等,可以使用encodeURI()进行编码传输。或者,麻烦一点,使用拼接的方式进行处理后再传输也可以。
[1]ajax传递给后台数组参数方式
[2]ajax 提交数组 泛型集合
[3]post方式调用接口,怎么传递数组数据呢 [问题点数:40分]
还有一种比较掩耳盗铃的办法,可以配置服务器端,让那些字符不再视为非法字符。
[1]解决Invalid character found in the request target. The valid characters are defined in RFC 7230 and RF
[2]异常:Invalid character found in the request target. The valid characters are defined in RFC 3986
[3]解决 tomcat. Invalid character found in the request target.异常错误
服务器接收、处理
接收
[参考]request.getAttribute() 和request.Parameter()区别
[参考]Java HttpServletRequest中getAttribute()方法和getParameter()区别
[参考]关于HTTP GET请求的url中文参数编码
后台处理阶段,我是直接作为字符串使用的,也可以使用别人提供的函数转为对象处理:
[资料]后台接收字符串,转为对象处理
服务器 》 浏览器
后台传给浏览器端的数据,是字符串格式的,转为json我使用的JSON.parse()
函数。
[参考资料]js中将字符串转换成json的三种方式
网友评论