HttpInterceptor Angulaire 4.3: l'Interception de 400 réponses d'erreur

Je voudrais pour intercepter 401 et d'autres erreurs afin de réagir en conséquence. C'est mon intercepteur:

import { LoggingService } from './../logging/logging.service';
import { Injectable } from '@angular/core';
import { HttpInterceptor, HttpHandler, HttpRequest, HttpEvent, HttpResponse, HttpErrorResponse } from '@angular/common/http';

import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/do';

@Injectable()
export class TwsHttpInterceptor implements HttpInterceptor {

    constructor(private logger: LoggingService) { }

    intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
        this.logger.logDebug(request);    
        return next.handle(request)
            .do(event => {
                if (event instanceof HttpResponse) {
                    this.logger.logDebug(event);
                }
            });
    }
}

Bien que cela fonctionne bien pour 200 demandes, il n'a pas d'intercepter l'erreur respsonses

Tout ce que je vois dans google chrome dev console est: est-ce

de la zone.js:2616 OBTENIR http://localhost:8080/backend/rest/wrongurl 404 (Pas
Trouvé)

Ou ce

de la zone.js:2616 OBTENIR http://localhost:8080/backend/rest/url 401
(Non autorisée)

Je voudrais que mon intercepteur. Ce qui me manque ?

OriginalL'auteur Tim | 2017-07-28