前端get请求有时候会带参给后端用来返回我们需要的值。
这个参一般是字符串或者是number类型。
但是如果是对象类型,前端应该怎么做?
//这种传参是不对的,后端无法识别出来。
http://localhost:8080/servlet/user?param={"accID":"milo","field":"nick_name,email"}
//应该对路径进行转义,变成下面这种格式。queryVO为对象。
http://nb-hz20130305.hikvision.com:81/dpm-report/receivable/?page=1&pageSize=30&orderBy=projNo%20desc%20&queryVO=%7B%22status%22%3A%5B%22%E6%8A%80%E6%9C%AF%E5%A4%84%E7%90%86%22%5D%7D
//应该怎么做?
//利用JSON.stringify转化为JSON格式,再利用encodeURIComponent()方法转义。
encodeURIComponent(JSON.stringify(this.queryparam))

前端向后端发送GET请求时,如果参数是对象类型,需要将其转化为JSON格式并进行URL编码。错误的做法是直接将对象作为查询参数,正确的方式是使用JSON.stringify()转换对象,然后用encodeURIComponent()进行URL编码,确保后端能正确解析。示例中展示了如何处理包含对象的GET请求参数。

1万+

被折叠的 条评论
为什么被折叠?



