http状态码拦截

本文介绍了一个基于Vue.js的应用程序配置实例,包括引入Vue、Vuex、Axios等库的方法,设置全局HTTP请求拦截器实现错误统一处理及状态码判断后的页面跳转,并展示了如何通过路由守卫进行页面标题的动态更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import Vue from 'vue'
import Vuex from 'vuex'
import axios from 'axios'
import router from './router'
import App from './App'
Vue.use(Vuex);
Vue.prototype.$http = axios;
Vue.prototype.$http.defaults.withCredentials=true;
 
Vue.prototype.$http.interceptors.response.use(response => {
  console.log(response)
  if (response.data.resCode== "1000") {
    localStorage.clear();
    alert(response.data.resMsg)
    router.push({
      name:'login'
    })
  }
  return response;
}, error => {
  if (error && error.response) {
    switch (error.response.status) {
      case 404:
        router.push({name:'error-404'});
        // error.message = '请求出错(404)'
        break;
      
      case 500:
        router.push({ name:'error-500'});
        //  error.message = '服务器错误(500)';
        break;
     
      default: error.message = `连接出错(${error.response.status})!`;
    }
  }
  return Promise.reject(error);
});
/**
 *  日志输出开关
 */
Vue.config.productionTip = true
/* eslint-disable no-new */
 
router.beforeEach((to,from,next)=>{
  window.document.title=to.meta.title;
  next();
});
router.afterEach((to,form,next)=>{window.scrollTo(0,0)});
new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>'
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值