Axios拦截器返回401错误的授权错误,原因是Bearer令牌。
创始人
2024-09-28 21:00:55
0

在拦截器中添加一个处理程序来处理401错误并更新Bearer令牌。以下是一个Axios拦截器示例代码,用于处理授权错误和更新令牌:

import axios from 'axios';

const api = axios.create({
  baseURL: 'https://api.example.com',
  headers: {
    'Authorization': 'Bearer ' + localStorage.getItem('access_token')
  }
});

api.interceptors.response.use(
  response => {
    return response;
  },
  async error => {
    const originalRequest = error.config;

    if (error.response.status === 401 && !originalRequest._retry) {
      originalRequest._retry = true;

      try {
        const response = await axios.post('https://api.example.com/token', {
          grant_type: 'refresh_token',
          refresh_token: localStorage.getItem('refresh_token')
        });

        const access_token = response.data.access_token;
        localStorage.setItem('access_token', access_token);

        api.defaults.headers.common['Authorization'] = 'Bearer ' + access_token;

        return api(originalRequest);
      } catch (error) {
        // handle error
      }
    }

    return Promise.reject(error);
  }
);

export default api;

该示例代码中的api对象是一个Axios实例,其中包含一个Bearer令牌,该令牌被存储在本地存储中。在执行任何网络请求之前,都会执行Axios拦截器。在拦截器中,会检查响应是否包含401错误状态码,如果包含,则会判断重试次数,如果没有重试过,则会进行一次身份验证。身份验证成功后,会更新Bearer令牌并执行原始请求。

相关内容

热门资讯

8分钟辅助!微信小程序雀神挂件... 8分钟辅助!微信小程序雀神挂件,方片十三张脚本(重大科普开挂辅助脚本);1、不需要AI权限,帮助你快...
6分钟辅助!海盗来了辅助脚本,... 6分钟辅助!海盗来了辅助脚本,h5反杀工具(透视代打开挂辅助下载);h5反杀工具是一款益智类棋牌手游...
第二分钟辅助!wepoker养... 【福星临门,好运相随】;第二分钟辅助!wepoker养号规律,超级三加一视频(透视脚本开挂辅助平台)...
4分钟辅助!竞技联盟辅助插件,... 4分钟辅助!竞技联盟辅助插件,边锋老友圈怎么开辅助(科普分享开挂辅助平台);小薇(透视辅助)致您一封...
第6分钟辅助!pokemmo辅... 第6分钟辅助!pokemmo辅助器脚本下载,微信小程序边锋辅助下载(今日科普开挂辅助工具);最新版2...
第四分钟辅助!德州之星扫描器,... 第四分钟辅助!德州之星扫描器,久久大厅挂价格(一秒答解开挂辅助神器);久久大厅挂价格软件透视开挂作为...
四分钟辅助!战神辅助器,jj斗... 四分钟辅助!战神辅助器,jj斗地主外卦(透视最新开挂辅助平台);jj斗地主外卦AI智能教程细节普及j...
第五分钟辅助!新海贝之城app... 第五分钟辅助!新海贝之城app破解,佛手在线辅助器苹果版(今日焦点开挂辅助下载);1、超多福利:超高...
四分钟辅助!杭州都莱辅助软件,... 四分钟辅助!杭州都莱辅助软件,广西八一字牌辅助(推荐攻略开挂辅助下载);1、让任何用户在无需AI插件...
五分钟辅助!九游辅助真的假的,... 五分钟辅助!九游辅助真的假的,全民大菠萝黑金版辅助器(透视了解开挂辅助软件);全民大菠萝黑金版辅助器...