title: Why does finally() not work after catching on an Observable in Angular 2?
body: <p>I am trying to add a loading spinner to every request that ends in Angular 2, so I extended the Http service calling it HttpService. After every request I would like to call a finally() function after catching errors so that I can stop the loading spinner.</p>
  
  <p>But typescript says: </p>
  
  <blockquote>
    <p>[ts] Property 'finally' does not exist on type 'Observable'.</p>
  </blockquote>
  
  <pre><code>import { AuthService } from './../../auth/auth.service';
  import { Injectable } from '@angular/core';
  import { Http, XHRBackend, RequestOptions, RequestOptionsArgs, Request, Response, Headers } from '@angular/http';
  
  import { Observable } from 'rxjs/Observable';
  import 'rxjs/add/operator/catch';
  import 'rxjs/add/observable/throw';
  
  @Injectable()
  export class HttpService extends Http {
  
      constructor(
          backend: XHRBackend,
          options: RequestOptions,
          private authservice: AuthService
      ) {
          super(backend, options);
          this.updateHeaders(options.headers);
      }
  
      request(url: string|Request, options?: RequestOptionsArgs): Observable&lt;Response&gt; {
          return super.request(url, options)
              .catch((response: Response) =&gt; this.authError(response))
              .finally(() =&gt; {
                  // ...
                  /* Do something here when request is done. For example
                  finish a spinning loader. */
              });
      }
  
      private authError(response: Response) {
          if (response.status === 401 || response.status === 403) {
              this.authservice.logout();
          }
          return Observable.throw(response);
      }
  
      private updateHeaders(headers: Headers) {
          headers.set('Content-Type', 'application/json');
          if (this.authservice.isloggedIn()) {
              headers.set('Authorization', `Bearer ${this.authservice.getToken()}`);
          }        
      }
  }
  </code></pre>
  
  <p>How can I run some code after every http request like this? What is the best way of doing it?</p>