欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

qs.stringify 和 JSON.stringify

程序员文章站 2024-03-17 12:17:34
...

qs.stringify 和 JSON.stringify

我小时候其实是一个不是很找人喜欢的人,逃学、打架,但我还记得我小学六年级毕业,我班主任给我写了一句话:天高任鸟飞,海阔凭鱼跃。

qs.stringify 和 JSON.stringify 的使用和区别

qs 可通过 npm 命令进行安装,是一个npm仓库所管理的包。

npm install qs

JSON是正常类型的JSON,而qs.stringify()将对象 序列化成URL的形式,以&进行拼接。

例如:

var a = {name:'wjw',age:22};
 qs.stringify(a)
// 'name=wjw&age=22'
JSON.stringify(a)
// '{"name":"wjw","age":22}'

两者都是将一个对象的类型转换成另外一种类型,如果并没有qs的这种需求,还是继续用JSON吧!

什么时候用qs

vue 中的 axios 默认的 content-type是 application/json
也就是 java 后端经常让你把参数放在 body 中的那种格式
传输数据的样式是 requestbody

{
    name:xxx,
    age:xxx
}

如果使用的qs进行序列化
那么 content-type 就是 application/x-www-form-urlencoded
也就是常说的表单提交
传输数据的样式是 formdata

name:xxx,
age:xxx

urlencoding后是

name=xxx&age=xxx

所以,实际上是否需要用qs去序列化参数完全取决于后端要怎么接受数据

相关标签: Vue