У меня есть вопрос, касающийся обработки ошибок в Angular 7.
У меня есть глобальная проверка валидации в бэкэнде, и возвращенный объект выглядит так же в почтальоне:
{
"errors": {
"prop1": [
"Required"
],
"prop2": [
"Required"
]
},
"type": "ValidationException",
"status": 400,
"detail": "Validation failed",
}
Но яне получить тот же объект в Angular, скорее ошибка по умолчанию из Angular, где все эти свойства отсутствуют.Итак, я не могу знать, какое свойство содержит проблему, а что отсутствует.
Я пытался работать с перехватчиком:
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return next.handle(request).pipe(
retry(1),
catchError((error: any) => {
// my code
return throwError(error);
})
);
}
И с обработчиком ошибок:
export class ErrorHandler implements ErrorHandler {
constructor() { }
public handleError(error: any) {
if (error && error.errors) {
// custom handling
}
}
}
и обе ошибки не содержат информацию, которую отправляет сервер.
Возможно ли каким-то образом получить такую же структуру в Angular?или это тупик?и если да, то каковы альтернативы?
Спасибо!