axios的参数格式问题

2020-01-07  本文已影响0人  田文健

axios 是基于promise的http请求库,可以用在浏览器,也可以在node环境下用。默认的参数转换格式可能不是我们想要的,那么需要用qs库转换。

axios.defaults.paramsSerializer = function(params){
  return qs.stringify(params, {arrayFormat: 'indices', allowDots: true})
};

上面的代码表示参数转为string,数组格式化成有下标的格式,对象属性用小数点标识。

其他用法
qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'indices' })
// 'a[0]=b&a[1]=c'
qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'brackets' })
// 'a[]=b&a[]=c'
qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' })
// 'a=b&a=c'

上一篇下一篇

猜你喜欢

热点阅读