Axios只能刷新一次令牌
创始人
2024-09-29 05:30:12
0
  1. 首先,需要设置Axios的拦截器,在请求中添加Authorization header,并将token携带在其中。

axios.interceptors.request.use(config => { const token = localStorage.getItem('token'); if (token) { config.headers.Authorization = Bearer ${token}; } return config; });

  1. 在服务端或者API中,将令牌的刷新逻辑拆分成两个步骤:获取新的令牌和设置新的令牌。

// 获取新的token router.post('/refresh', async (req, res) => { try { const refreshToken = req.cookies.refreshToken; const { data } = await axios.post('https://auth.example.com/token', { refreshToken }); res.send(data); } catch (error) { res.status(401).send(error); } });

// 设置新的token axios.interceptors.response.use( response => { const newToken = response.data.token; if (newToken) { localStorage.setItem('token', newToken); } return response; }, error => { const { config, response } = error; const originalRequest = config; if (response.status === 401 && !originalRequest._retry) { originalRequest._retry = true; return axios.post('/refresh') .then(res => { if (res.status === 200) { axios.defaults.headers.common.Authorization = Bearer ${res.data.token}; return axios(originalRequest); } }); } return Promise.reject(error); } );

  1. 当旧token过期时,Axios拦截器将会自动发送一个新的请求来获取新的token并设置。这样,在请求间断时,用户可以无缝地继续使用应用。

相关内容

热门资讯

3分钟辅助!微乐小程序黑科技,... 3分钟辅助!微乐小程序黑科技,微乐小程序辅助器出租(开挂)本来是有挂(2026)1、完成微乐小程序黑...
来临!微乐小程序免费黑科技,微... 来临!微乐小程序免费黑科技,微乐小程序辅助器免费安卓(透视)切实真的是有挂(哔哩哔哩)1、微乐小程序...
第5分钟透视!微乐小程序黑科技... 第5分钟透视!微乐小程序黑科技,微信微乐辅助器下载(开挂)都是是真的挂(2026)小薇(辅助器软件下...
透视计算!微乐小程序免费黑科技... 透视计算!微乐小程序免费黑科技,微乐自建房辅助工具别人怎么看(透视)竟然真的有挂(哔哩哔哩)1、金币...
2分钟辅助!微乐小程序黑科技,... 2分钟辅助!微乐小程序黑科技,微乐江苏小程序游戏破解下载(开挂)真是真的有挂(2026)1、很好的工...
透视讲解!微乐小程序黑科技,微... 透视讲解!微乐小程序黑科技,微乐小程序有脚本吗(透视)原来是有挂(哔哩哔哩)1、玩家可以在微乐小程序...
五分钟辅助!微乐小程序黑科技,... 五分钟辅助!微乐小程序黑科技,微乐家乡脚本助手(开挂)竟然真的有挂(2026)1、实时微乐小程序黑科...
9分钟安装!微乐小程序免费黑科... 9分钟安装!微乐小程序免费黑科技,微乐小程序免费黑科技下载方法(开挂)好像有挂(2026)微乐小程序...
透视挂!微乐小程序黑科技,微乐... 透视挂!微乐小程序黑科技,微乐小程序黑科技辅助工具2026最新推荐(透视)切实是有挂(哔哩哔哩)1)...
第8分钟辅助!微乐小程序黑科技... 第8分钟辅助!微乐小程序黑科技,陕西微乐挖坑控制器(开挂)果然真的有挂(2026)一、微乐小程序黑科...