fix: fix errorHandler

pull/3/head
Saeid 4 years ago
parent 511103de57
commit 61bdcb3b96

@ -6,9 +6,9 @@ import commonRoute from "@Global/utils/common/routes";
import toast from "./toast.service"; import toast from "./toast.service";
import Vue from "vue";
function errorResponseHandler(error) { function errorResponseHandler(error) {
// check for errorHandle config // check for errorHandle config
if ( if (
error.config.hasOwnProperty("errorHandle") && error.config.hasOwnProperty("errorHandle") &&
@ -19,15 +19,15 @@ function errorResponseHandler(error) {
// if has response show the error // if has response show the error
if (error.response) { if (error.response) {
if(error.response.status == 401) { if(error.response.status === 401) {
TokenService.removeToken(); TokenService.removeToken();
ApiService.removeAuthHeader(); ApiService.removeAuthHeader();
store.commit('auth/logout', {}, {root: true}); store.commit('auth/logout', {}, {root: true});
if (commonRoute.login() != window.location.pathname) { if (commonRoute.login() !== window.location.pathname) {
window.location.href = commonRoute.login(); window.location.href = commonRoute.login();
} }
toast.error('نام کاربری یا رمز عبور اشتباه است', 'خطا'); toast.error('نام کاربری یا رمز عبور اشتباه است', 'خطا');
} else if(error.response.status == 422) { } else if(error.response.status === 422) {
if(typeof error.response.data.errors !== 'undefined') { if(typeof error.response.data.errors !== 'undefined') {
for (const key in error.response.data.errors) { for (const key in error.response.data.errors) {
if (error.response.data.errors.hasOwnProperty(key)) { if (error.response.data.errors.hasOwnProperty(key)) {
@ -35,13 +35,14 @@ function errorResponseHandler(error) {
} }
} }
} }
} else if(error.response.status == 500) { } else if(error.response.status === 500) {
toast.error('مشکل از سمت سرور', 'خطا'); toast.error('مشکل از سمت سرور', 'خطا');
} }
} }
return Promise.reject(error);
} }
function successHandler(response) { function successHandler(response) {
if(response.status == 200 || response.status == 201) { if(response.status === 200 || response.status === 201) {
if(typeof response.data.message !== 'undefined' && typeof response.data.message.content !== 'undefined') { if(typeof response.data.message !== 'undefined' && typeof response.data.message.content !== 'undefined') {
toast.success(response.data.message.content, response.data.message.title || 'موفق'); toast.success(response.data.message.content, response.data.message.title || 'موفق');
} }
@ -51,5 +52,5 @@ function successHandler(response) {
// apply interceptor on response // apply interceptor on response
axios.interceptors.response.use(successHandler, errorResponseHandler); axios.interceptors.response.use(successHandler, errorResponseHandler);
Vue.prototype.$axios = axios;
export default errorResponseHandler;
Loading…
Cancel
Save