问题描述
axios.post()请求,返回500
查阅资料后得知是form Data 和 Request payload的问题,二者的格式不同,处理方式不同
axios.post(url, {})
直接传参用的是Request payload的方式发送参数,而后端以form Data的方式处理参数,导致报错
解决方法
方法一:
var params = new URLSearchParams();
params.append('key1', 'value1');
params.append('key2', 'value2');
params.append('key3', 'value3');
axios.post(url, params).then();
兼容性不高,在IE不可用
方法二:
使用qs
npm i qs
import qs from 'qs';
var params = qs.stringify({
key1: value1,
key2: value2,
key3: value3,
});
axios.post(url, params)