通过js-cookie工具封装axios网络请求
import axios from 'axios';
import Cookie from 'js-cookie'
axios.defaults.timeout = 5000;
axios.defaults.baseURL = 'baseUrl';
axios.interceptors.request.use(
config => {
config.data = JSON.stringify(config.data);
config.headers = {
"sign": "",
"content-type": "application/json",
"app-type": "h5",
"token": Cookie.get('token') ? Cookie.get('token') : '',
}
return config;
},
error => {
return Promise.reject(err);
}
);
axios.interceptors.response.use(
response => {
if (response.statusCode == 401) {
router.push({
path: "/",
querry: { redirect: router.currentRoute.fullPath }
})
}
return response;
},
error => {
return Promise.reject(error)
}
)
export function get(url, params = {}) {
return new Promise((resolve, reject) => {
axios.get(url, {
params: params
})
.then(response => {
resolve(response.data);
})
.catch(err => {
reject(err)
})
})
}
export function post(url, data = {}) {
return new Promise((resolve, reject) => {
axios.post(url, data)
.then(response => {
resolve(response.data);
}, err => {
reject(err)
})
})
}
export function patch(url, data = {}) {
return new Promise((resolve, reject) => {
axios.patch(url, data)
.then(response => {
resolve(response.data);
}, err => {
reject(err)
})
})
}
export function put(url, data = {}) {
return new Promise((resolve, reject) => {
axios.put(url, data)
.then(response => {
resolve(response.data);
}, err => {
reject(err)
})
})
}