Reputation: 3506
My problem is error.response
- undefined.
It happens because I have an interceptor:
instance.interceptors.response.use(undefined, error => {
if (error.response.status === 401) {
console.log("UNAUTHORIZED");
}
});
If I remove the interceptor everything will work. This is how I want to get the response from error:
const fn = async stuff => {
try {
const res = await API.get('bla-bla-bla')
} catch (e) {
console.log(e.response) <------------------------- undefined
if (e.response && e.response.status === 401) {
console.log("UNAUTHORIZED");
}
}
}
Upvotes: 3
Views: 4270
Reputation: 145
In your interceptor you must return the error object with Promise.reject for it to be available later:
instance.interceptors.response.use(undefined, error => {
if (error.response.status === 401) {
console.log("UNAUTHORIZED");
}
return Promise.reject(error);
});
Upvotes: 2