【发布时间】:2020-05-25 14:08:24
【问题描述】:
我想在发送正确请求之前刷新令牌,但我的反应应用程序在 1 个视图中发送 2-5 个请求时遇到问题。通过这种方式,我发送了 2-5 个请求来刷新令牌。
如何在收到刷新响应之前停止所有请求?
我的代码:
axios.interceptors.request.use(config => {
const decoded = decodeJWT(window.localStorage.getItem("jwt"));
if (decoded && Date.now() >= decoded.exp * 1000) {
return axiosInstance
.post("auth/jwt/refresh/", {
refresh: window.localStorage.getItem("refresh")
})
.then(response => {
window.localStorage.setItem("jwt", response.data.access);
config.headers.Authorization = `JWT ${response.data.access}`;
return config;
})
.catch(err => {
window.localStorage.removeItem("jwt");
return config;
});
} else {
return config;
}
});
【问题讨论】:
标签: javascript reactjs jwt token refresh