Loading

ajax网络请求时候的data参数应该用JSON.stringify?

转载自:https://blog.csdn.net/vincent_ling/article/details/49728675?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

最近有点困惑,在进行ajax请求填写data参数时,什么情况下该用JSON.stringify,什么时候不用,直接上json对象?

我是后端开发的,有时候会看到前端传过来的数据不是我想的那样,什么原因呢?

今晚再次遇到,所以就上网搜搜,果然,在前端方面,我还是太弱了。事不宜迟,赶紧记录下来。

假如,我的json对象是这样的

var data = {
name: 'vinxent',
age: 21
}

那么问题来了,在get方法中和post方法中,data的参数应该一样吗?
过程不论证了,只说结果吧

事实上,加入不用JSON.stringify(data), 会变成字符串拼接,'name=vinxent&age=21',有点和get方法相像。若使用JSON.stringify(data),则会传输json字符串-- "{name:'vinxent', age:21}" 。

所以,在一般场景来说,get方法无需JSON.stringify,post方法需要。

posted @ 2021-11-24 21:57  爱睡懒觉的我  阅读(308)  评论(0)    收藏  举报