typescript - Angular 2 http fångar inte fel vid nekad anslutning


Jag vill fånga alla HTTP-fel för att informera användaren om ett uppkommet problem.

Så jag skapade en metod som gör en HTTP GET med en catch.

get(path: string): Promise<any> {
  let headers = new Headers();
  return this.http.get(path, { headers: headers })
    .toPromise()
    .then(response => { ... })
    .catch((response: Response) => { this.errorHandler(response); });
}

När sökvägsparametern är '/fault-url' hanteras fångsten som förväntat.

Men när sökvägen är 'http://localhost:5000/fault-url' fångas inte felet av catch-metoden. Jag har lagt till loggning på alla olika ställen, men det verkar som att get-metoden bara avbryts. Konsolloggen visar följande fel

ALTERNATIV http://localhost:5000/fault-url net::ERR_CONNECTION_REFUSED

UNDANTAG: Svar med status: 0 för URL: null

Oupptäckt svar {_body: ProgressEvent, status: 0, ok: false, statusText: "", headers: Headers…}

Avbryter http verkligen eller gör jag något fel?

Svar #1

Efter att ha uppgraderat till Angular 2.3.0 är problemet löst.

Relaterade artiklar