请求拦截,响应拦截

 

 安装可以解析eleToken 的模块

复制代码
yarn add jwt-decode -D

使用解析模块

import jwt_decode from 'jwt-decode'

const decoded = jwt_decode(eleToken)
复制代码

 

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

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

 

posted @   龙卷风吹毁停车场  阅读(630)  评论(0编辑  收藏  举报
编辑推荐:
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Linux系统下SQL Server数据库镜像配置全流程详解
阅读排行:
· Sdcb Chats 技术博客:数据库 ID 选型的曲折之路 - 从 Guid 到自增 ID,再到
· 语音处理 开源项目 EchoSharp
· 《HelloGitHub》第 106 期
· Huawei LiteOS基于Cortex-M4 GD32F4平台移植
· mysql8.0无备份通过idb文件恢复数据过程、idb文件修复和tablespace id不一致处
点击右上角即可分享
微信分享提示