axios中使用qs的作用是什么?

我看网上说是qs.stringify()将对象 序列化成URL的形式,以&进行拼接
比如我这样发送下面这个数据时 后台也完全可以接收到啊 那么qs把参数转换成URL的形式发送数据有什么用吗?

{email: '5224663@qq.com', password: 123456}
阅读 19.7k
2 个回答

ajax请求的get请求是通过URL传参的(以?和&符连接),而post大多是通过json传参的。
qs是一个库。里面的stringify方法可以将一个json对象直接转为(以?和&符连接的形式)。
在开发中,发送请求的入参大多是一个对象。在发送时,如果该请求为get请求,就需要对参数进行转化。使用该库,就可以自动转化,而不需要手动去拼接

axios默认的content-typeapplication/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去序列化参数完全取决于后端要怎么接受数据

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏