Improved error handling

This commit is contained in:
MakerLab-Dev
2020-01-30 20:47:51 +01:00
parent 4bb4362d23
commit 1c19be85c3

View File

@ -88,17 +88,27 @@ window.axios.interceptors.request.use(function (config) {
global.axios.interceptors.response.use(undefined, function (err) {
// Do something with request error
return new Promise((resolve, reject) => {
if (!err.response) {
window.toastr['error']('Network error: Please check your internet connection or wait until servers are back online')
console.log('Network error: Please check your internet connection.')
} else {
console.log(err.response)
if (err.response.data.error === 'invalid_credentials') {
window.toastr['error']('Invalid Credentials')
}
if (err.response.data && (err.response.statusText === 'Unauthorized' || err.response.data === ' Unauthorized.')) {
// Unauthorized and log out
window.toastr['error']((err.response.data.message) ? err.response.data.message : 'Unauthorized')
store.dispatch('auth/logout', true)
} else if (err.response.data.errors) {
// Show a notification per error
const errors = JSON.parse(JSON.stringify(err.response.data.errors))
for (const i in errors) {
window.toastr['error'](errors[i])
}
} else {
throw err
// Unknown error
window.toastr['error']((err.response.data.message) ? err.response.data.message : 'Unknown error occurred')
}
})
}
return Promise.reject(err)
})
/**