Ich habe einen HttpInterceptor, um Fehler abzufangen und sie in einem modalen anzuzeigen. Neben dem Fehlercode und der Nachricht möchte ich auch den Hauptteil der Antwort zeigen, der tatsächlich eine genauere Beschreibung des Fehlers enthält (z. B. bei einem 500 internen Serverfehler). Wie erreiche ich das in eckigen? (Ich benutze Version 4.3.6.)Zugriff auf HTTP-Fehlerantworttext von HttpInterceptor in Angular
Ich schaute bereits verwandte Fragen, aber Antworten wie HttpErrorResponse._body oder ähnliches funktionieren nicht für mich. Beim Überprüfen der Fehlerantwort in der Konsole wird HttpErrorResponse.error ebenfalls auf null gesetzt.
Hier ist, wie mein Abfangjäger zur Zeit aussieht:
@Injectable()
export class HttpErrorInterceptor implements HttpInterceptor {
public constructor(private httpErrorService: HttpErrorService) { }
public intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return next.handle(req).do(event => {
}, (error: HttpErrorResponse) => {
console.log('HTTPERROR INTERCEPTOR');
console.log(error);
if (error.status >= 400) {
this.httpErrorService.onError(error);
}
});
}
}
Dank! Es funktioniert tatsächlich jetzt. Ich war tatsächlich auf Version 4.3.6 (auch in meiner ursprünglichen Frage aktualisiert) und dort war der Fehler null. Aber jetzt auf Version 4.4.6 funktioniert alles gut. – Severin
@Severin, Gern geschehen) –