}, function (error) { // 对请求错误做些什么 alert('网络错误,请稍后再试'); store.commit('SET_LOADING',false); return Promise.reject(error); });
api.interceptors.request.use(function (config) { // 在发送请求之前做些什么 store.commit('SET_LOADING',true); // 如果有token,添加到请求报文 后台会根据该报文返回status if(store.state.login.token) { config.headers.Authorization = `token ${store.state.login.token}`; } return config; }, function (error) {
}, function (error) { // 对响应错误做点什么 store.commit('SET_LOADING',false); if(errore.response) { if(error.response.status== 401) { // 如果返回401 即没有权限,跳到登录页重新登录 store.commit('CHANGE_TOKEN',0); alert('请重新登录'); router.replace({ path: 'login', query: {redirect: router.currentRoute.fullPath} }) } } return Promise.reject(error); });
setTimeout(()=>{ store.commit('SET_LOADING',false); },300)