axios中POST请求变成OPTIONS问题处理
今天在调接口的时候,发现axios 在已Post的方式提交formData格式的数据的时候出现了请求变成opition的情况,导致无法请求成功。这把我给郁闷的啊,因为我用原生ajax或者JQuery的$.ajax可以请求成功,没有任何问题,数据成功返回。于是我就去网上搜了一番,最后终于解决了!
第一种:使用 URLSearchParams (会有兼容问题,写起来比较麻烦)
var data = new URLSearchParams();
data.append('id', '1');
data.append('name', 'minmin');
data.append('age', '23')
axios.post('url, data).then(
res => {
...
}
)
第二种:使用qs.stringify
- 安装
npm install --save axios vue-axios qs
或者
cnpm install --save axios vue-axios qs
- 导入qs,使用qs.stringify转一下formData即可。
import qs from 'qs'
let formData = {
"a":b
};
axios.post(url,qs.stringify(formData))
.then(res=>{
console.log(res)
})
完美!