Есть проблема с обновлением токена. Чтобы ее решить сделал interceptor на response. Но проблема в том, что нужен еще и другой interceptor на request. Но вместе они не работают. В чем проблема? Может как-то неправильно передаю управление? Вроде по логике должно работать, да и в доках все также. Сами хендлеры в axios.interceptors отображаются. Может кто сталкивался? При этом два response интерцептора прекрасно работают. axios@0.21.2
axios.interceptors.request.use(
config => {
return config
},
error => {
return Promise.reject(error)
},
)
let isTokenRefreshing = false
axios.interceptors.response.use(
response => {
console.log(response)
return response
},
async (error: AxiosError) => {
if (error.response?.status !== HttpStatuses.UNAUTHORIZED || isTokenRefreshing) return Promise.reject(error)
try {
isTokenRefreshing = true
const result = await refreshTokenAndRetry(error)
isTokenRefreshing = false
return result
} catch (e) {
isTokenRefreshing = false
return Promise.reject(error)
}
},
)
axios({ method: 'GET', url: 'https://jsonplaceholder.typicode.com/todos/1' })
UPD: При этом в
код сандобксе прям такой же код работает нормально... Загадка прям