1.axios官网中提到的qs库
2. content-type和 参数 的关系
- content-type : application/json,要求的参数格式是JSON
{
a:c,
b:d
}
- content-type :application / x-www-form-urlencoded 要求的参数格式是键值对拼接的方式 :key=value&key=value
a=c&b=d
设置了application / x-www-form-urlencoded,但是浏览器发送请求的时候,发现请求头是application/json
查到的解释
- 浏览器出于自我保护,根据参数的格式自动转化了content-type
- axios是根据参数的格式设置content-type的
- 就是需要我们这边把参数的格式给改成对应的数据格式
3.什么是qs库?
将url中的参数转为对象;将对象转为url参数形式;
let obj1 = qs.parse('a=c'); // {a:'c'}
let obj2 = qs.parse({a:c,b:d}); // a=c&b=d
4.在axios中qs的使用
- 为post请求
- content-type为 application/json
5.引入qs
2.1 qs 安装
npm install qs / cnpm install qs (安装了淘宝镜像的才可以使用)
2.2 qs 全局引入
//在main.js引入qs
import qs from 'qs'
//配全局属性配置,在任意组件内可以使用this.$qs获取qs对象
Vue.prototype.$qs = qs