title: Angular HttpInterceptor does not work
body: <p>I'd like to implement a HttpInterceptor, but somehow, it's not doing anything at all.</p>
  
  <p>Custom service implementing <code>HttpInterceptor</code>:</p>
  
  <pre><code>import {Injectable} from '@angular/core';
  import {HttpEvent, HttpInterceptor, HttpHandler, HttpRequest, HttpResponse, HttpErrorResponse} from '@angular/common/http';
  import {AuthenticationService} from "./authentication.service";
  import {Observable} from "rxjs/Observable";
  
  @Injectable()
  export class HttpInterceptorService implements HttpInterceptor {
  
    constructor(private auth: AuthenticationService) {
    }
  
    intercept(req: HttpRequest&lt;any&gt;, next: HttpHandler): Observable&lt;HttpEvent&lt;any&gt;&gt; {
      console.log("INTERCEPTED!!");
  
      const authHeader = this.auth.getAuthorizationHeader();
  
      const authReq = req.clone({setHeaders: {Authorization: authHeader}});
  
      return next.handle(authReq)
        .do((event) =&gt; {
          if (event instanceof HttpResponse) {
            console.log(event);
          }
        }, (error: HttpErrorResponse) =&gt; {
          console.log(error);
        });
    }
  }
  </code></pre>
  
  <p>Provided in <code>app.modules.ts</code>:</p>
  
  <pre><code>  providers: [
      {
        provide: HTTP_INTERCEPTORS,
        useClass: HttpInterceptorService,
        multi: true,
      },
      AuthenticationService
    ]
  </code></pre>
  
  <p>Unfortunately, it seems to be doing nothing. Have I missed something?</p>