axios中qs用法

一、什么时候需要用qs进行序列化:

axios默认的content-type是application/json,即json格式,后台可以使用字符串进行接收,然后再解析即可:
默认(不使用qs):
发送请求:
export const getOutList = params => {
    return service.post(launchReciveApiConfig.getOutList, params);
}


后台接收:使用字符串接收后,通过json方法获取需要数据即可
@PostMapping("/getOutList")
@ResponseBody
public AjaxResult getOutList(@RequestBody String params) {
    Map map = JSONObject.parseObject(params);
    String name = map.get("name").toString();
    //...
}


传递的数据格式如下(json格式):
{
    name:xxx,
    age:xxx
}

使用qs.stringify解析后,content-type是application/x-www-form-urlencoded,即form表单格式,后台可以使用实体进行接收:

使用qs:将数据序列化成url格式
发送请求:
export const editOut = params => {
    return service.post(launchReciveApiConfig.editOut, qs.stringify(params));
}


后台接收:使用TOut实体类接收即可
@PostMapping("/editOut")
@ResponseBody
public AjaxResult editOut(TOut tOut) {
    //...
}


传递的数据格式如下(form表单格式):
name:xxx&age:xxx
所以,实际上是否需要用qs去序列化参数完全取决于后端要怎么接受数据。

二、qs.parse方法:

qs.parse()将URL解析成对象的形式;
let url = 'name:xxx&age:xxx'
console.log(qs.parse(url));
输出:
{
    name:xxx,
    age:xxx
}

三、qs处理数组及springBoot后台接收

参考:https://blog.csdn.net/pifutan/article/details/86320705

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值