请求拦截,响应拦截

//请求拦截
axios.interceptors.request.use(
  config => {
    if(localStorage.eletToke){ //如果我的eleToke存在
      // 设置统一的请求header
      config.headers.Authorization = localStorage.eletToke //授权
    }
    return config;
  },
  error => {
    return Promise.reject(error);
  }
);

//响应拦截
axios.interceptors.response.use(
  response => {
    return response;
  },
  error => {
    // 判断返回状态是不是401,如果是401代表当前的eleToke以及失效,需要移除localStorage里面的eleToke
    let {status} = error.response //获取错误状态码
    if(status == 401){
      message.error("当前登录(eleToke)已失效,请重新登录")
      localStorage.removeItem("eleToke")//清除eleToke
      this.router.push("/Login")//让用户从新回到登录页面
    }
    return Promise.resolve(error.response);
  }
);

猜你喜欢

转载自www.cnblogs.com/tlfe/p/11567620.html
今日推荐