首页 > 解决方案 > Reactjs redux 应用程序中的刷新令牌

问题描述

当令牌过期时,我已经对 redux 应用程序我的问题做出反应,我面临如何刷新令牌和调用 api 的问题,当我在我的应用程序中获取任何 API 时调用此代码

我调用它的第一个动作是 getWithAuth() 并且以这种方式我正在处理刷新令牌,我知道我做错了。

(代码实际上不起作用,只是我在展示示例) https://stackblitz.com/edit/react-kdujea?file=apiManager.js

我想要当我调用 getWithAuth 或任何 api 并得到结果 401 时。我想要刷新令牌,如果我得到 401 则注销。

标签: javascriptreactjsreduxreact-reduxrefresh-token

解决方案


您可以使用axios 拦截器在一处处理未经授权的 401 问题,例如

axios.interceptors.response.use(function (response) {
return response;
}, function (error) {
  if(error.status === 401) {
    // do something when unauthorized
  }
  return Promise.reject(error);
});

推荐阅读