I have a general query about Axios and Promises. Maybe someone can help me clear this concept.
Basic Interceptor of Axios includes:
// Add a response interceptor
axios.interceptors.response.use(function (response) {
// Any status code that lie within the range of 2xx cause this function to trigger
// Do something with response data
return response;
}, function (error) {
// Any status codes that falls outside the range of 2xx cause this function to trigger
// Do something with response error
return Promise.reject(error);
});
My question is what's the difference between returning error as
Project.reject(error);
and as
return error;
This response and error goes to the Request 'then' amd 'catch' blocks respectively I believe. But what's the difference if we use Promise.resolve and Promise.reject?
I just tried (it's that easy ) and the difference is that by returning a rejected promise ( return Promise.reject(error)
), you tell axios
that the response has an error condition and that the upstream code should be notified about it ( axios(…).catch(…)
will trigger).
When returning just the error ( return error
), you're telling axios
to basically ignore the error and the upstream code will not know about it ( axios(…).then(…)
will trigger).
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.