feat: add more info to error

This commit is contained in:
Polianin Nikita 2024-10-07 03:25:13 +03:00
parent 3ca6f56fec
commit 9209b31db2

View File

@ -153,42 +153,43 @@ export default abstract class ApiService {
return; return;
} }
let message: string; let title: string;
let description: string | undefined = undefined; let message: string | undefined = undefined;
if (error.error instanceof ErrorEvent) { if (error.error instanceof ErrorEvent) {
message = `Произошла ошибка: ${error.error.message}`; title = `Произошла ошибка: ${error.error.message}`;
} else { } else {
switch (error.status) { switch (error.status) {
case 0: case 0:
message = 'Неизвестная ошибка. Пожалуйста, попробуйте позже.'; title = 'Неизвестная ошибка. Пожалуйста, попробуйте позже.';
break; break;
case 400: case 400:
message = 'Ошибка запроса. Пожалуйста, проверьте отправленные данные.'; title = 'Ошибка запроса. Пожалуйста, проверьте отправленные данные.';
break; break;
case 401: case 401:
this.router.navigate(['/login/']).then(); this.router.navigate(['/login/']).then();
message = 'Ошибка авторизации. Пожалуйста, выполните вход с правильными учетными данными.'; title = 'Ошибка авторизации. Пожалуйста, выполните вход с правильными учетными данными.';
break; break;
case 403: case 403:
message = 'Отказано в доступе. У вас нет разрешения на выполнение этого действия.'; title = 'Отказано в доступе. У вас нет разрешения на выполнение этого действия.';
break; break;
case 404: case 404:
message = 'Запрашиваемый ресурс не найден.'; title = 'Запрашиваемый ресурс не найден.';
break; break;
case 500: case 500:
message = 'Внутренняя ошибка сервера. Пожалуйста, попробуйте позже.'; title = 'Внутренняя ошибка сервера. Пожалуйста, попробуйте позже.';
break; break;
case 503: case 503:
message = 'Сервер на обслуживании. Пожалуйста, попробуйте позже.'; title = 'Сервер на обслуживании. Пожалуйста, попробуйте позже.';
break; break;
default: default:
message = `Сервер вернул код ошибки: ${error.status}`; title = `Сервер вернул код ошибки: ${error.status}`;
break; break;
} }
if (error.error?.Error) { if (error.error?.Error)
description = `${error.error.Error}`; message = error.error.Error;
} else
message = error.error;
} }
this.notify.error(description, message); this.notify.error(message == '' ? undefined : message, title);
} }
} }