我想捕获所有http错误,以通知用户发生了问题。
所以,我创建了一个使用catch进行http get的方法。
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); });
}
当路径参数是&#39; / fault-url&#39;渔获量按预期处理。
但当路径是&#39; http://localhost:5000/fault-url&#39; catch方法没有捕获错误。 我已经将日志记录添加到了所有不同的地方,但它接收get方法只是中止。 控制台日志显示以下错误
选项http://localhost:5000/fault-url net :: ERR_CONNECTION_REFUSED
EXCEPTION:响应状态:URL为0:null
未捕获的响应{_body:ProgressEvent,status:0,ok:false,statusText:&#34;&#34;,headers:Headers ...}
http真的中止还是我做错了什么?
答案 0 :(得分:1)
升级到Angular 2.3.0后,问题就解决了。