axios的post请求,默认是application/json提交JSON格式的数据
实际我们后端要求的 'Content-Type': 'application/x-www-form-urlencoded'
这时需要配置content-type:
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
这里使用了qs插件:
简单来说,qs 是一个增加了一些安全性的查询字符串解析和序列化字符串的库。
在项目中使用命令行工具输入:
npm install qs --save
安装完成后在需要用到的组件中:
import qs from "qs"
这里我是放在了main.js:
import qs from "qs"
Vue.prototype.$qs = qs;
具体使用中我查看了:qs.parse()和qs.stringify()
这两种方法虽然都是序列化,但是还是有区别的。
qs.parse()是将URL解析成对象的形式
qs.stringify()是将对象 序列化成URL的形式,以&进行拼接
demo:
本文介绍了如何在Vue项目中使用axios进行POST请求时,将Content-Type设置为'application/x-www-form-urlencoded',并引入qs插件进行数据序列化。内容涉及到qs库的parse()和stringify()方法的区别,前者用于将URL解析成对象,后者则是将对象转换为URL形式。
订阅专栏 解锁全文
8449

被折叠的 条评论
为什么被折叠?



