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并设置。这样,在请求间断时,用户可以无缝地继续使用应用。

相关内容

热门资讯

透视肯定!微乐小程序黑科技,微... 透视肯定!微乐小程序黑科技,微乐家乡自建房辅助app(透视)确实真的是有挂(哔哩哔哩)1、打开软件启...
3分钟插件!微乐小程序黑科技,... 3分钟插件!微乐小程序黑科技,微乐斗地主有挂吗(开挂)竟然存在有挂(2026)1、微乐小程序黑科技辅...
透视安卓版!微乐小程序黑科技,... 透视安卓版!微乐小程序黑科技,微乐江西小程序辅助(透视)确实真的有挂(哔哩哔哩)1、点击下载安装,微...
五分钟下载!微乐小程序黑科技,... 五分钟下载!微乐小程序黑科技,微乐广西小程序插件(开挂)确实真的是有挂(2026)1、点击下载安装,...
黑科技教程!微乐小程序免费黑科... 黑科技教程!微乐小程序免费黑科技,微信小程序微乐辅助器免费下载(透视)其实真的有挂(哔哩哔哩)1、超...
第1分钟辅助!微乐小程序黑科技... 第1分钟辅助!微乐小程序黑科技,微乐自建房辅助软件(开挂)竟然是真的挂(2026)1、第1分钟辅助!...
透视插件!微乐小程序黑科技,微... 透视插件!微乐小程序黑科技,微乐贵阳足鸡麻将开挂(透视)竟然是真的挂(哔哩哔哩)1、实时微乐贵阳足鸡...
3分钟插件!微乐小程序黑科技,... 3分钟插件!微乐小程序黑科技,微信小程序微乐辅助免费版(开挂)原来真的是有挂(2026)1、金币登录...
透视黑科技!微乐小程序免费黑科... 透视黑科技!微乐小程序免费黑科技,手机微乐小程序破解器如何使用(透视)其实存在有挂(哔哩哔哩);在进...
3分钟开挂!微乐小程序黑科技,... 3分钟开挂!微乐小程序黑科技,小程序微乐游戏辅助器(开挂)竟然真的是有挂(2026)所有人都在同一条...