У меня есть следующий axios
перехватчик.
Проверяет действительность сохраненного токена.Если он недействителен, выдается запрос на получение и сохранение обновленного токена.
axios.interceptors.request.use(async config =>
if(checkValidity(localStorage.getItem('token')) === false) {
const response = await axios.get('http://foobar.com/auth/refresh');
localStorage.setItem('token', response.headers['token']);
config = getConfigFromResponse(response);
}
return config;
});
Он отлично работает.Проблема в том, что если у меня много запросов с недействительным токеном, то для его обновления выполняется много запросов к http://foobar.com/auth/refresh
.
Можно ли поместить все запросы в массив и запустить их после того, как обновление выполнено?готово?
Идея состоит в том, чтобы избежать перехвата ошибок 401 и повторного воспроизведения запроса: вот почему я хочу «сохранить» запросы во время получения токена, а затем запустить их, когда токен будет готов.