get
axios
.get('http://xxx.api/xxx?参数=值')
.then(response => {
this.list = response.data.message
})
.catch(err => {
// console.log(err);
})
post
axios
.post(url, arg) // arg:`参数名=值&参数1=值&参数2=值`
.then(resp => {
console.log(resp.data);
console.log(resp.data.status);
})
.catch(err => {
console.log(err);
})
参数处理
安装qs: npm i -S qs
// var qs = require(‘qs’)
导入ps:import qs from ‘qs’
// 处理参数
qs.stringify({
firstName: ‘Fred’,
lastName: ‘Flintstone’
}
结果:firstName=Fred&lastName=Flintstone
配置公共请求路径
axios.defaults.baseURL = ‘http://xxx.api/xxx’
拦截器
拦截器会拦截发送的每一个请求,请求发送之前执行request中的函数,请求发送完成之后执行response中的函数
// 请求拦截器
axios.interceptors.request.use(function (config) {
// 所有请求之前都要执行的操作
return config;
}, function (error) {
// 错误处理
return Promise.reject(error);
});
// 响应拦截器
axios.interceptors.response.use(function (response) {
// 所有请求完成后都要执行的操作
return response;
}, function (error) {
// 错误处理
return Promise.reject(error);
});