注:默认已经install与引入qs
1.POST
- 一 .json请求,那么就不需要修改什么。
- 二.form-data或x-www-form-urlencoded请求:
可以在发送请求的时候加上:
this.axios({
url:'请求地址',
method:'post',
data: {'key':'值'},
transformRequest: [data => {
return this.qs.stringify(data)
}]
})
或者可以在拦截器里加上(当然要在拦截器文件处引入qs)
axios.interceptors.request.use(
config => {
config.data = qs.stringify(config.data)
return config
},
error => {
}
)
- 三.post携带数组:
只需对qs语句进行修改
qs.stringify(config.data, { arrayFormat: 'repeat', allowDots: true })
2.GET
携带数组传参:
this.axios({
url:'请求地址',
method: 'get',
params: {
paramArr:['1','2']
},
paramsSerializer: params => {
return this.qs.stringify(params, { indices: false })
}
})
关键在于用paramsSerializer进行序列化。