[英]Handling error in http.get()
我正在尝试通过使用以下代码访问终结点URL
this.http.get<IApiResponse>(this.endpointURL, {headers: headers, params: params}).subscribe(
(response:IApiResponse) => {
// handle response
},
error => {
// handle error
console.log(error);
}
);
此方法可以正常工作。 但是,当我运行此应用程序的设备没有互联网连接时,我在Chrome控制台中得到以下输出:
GET https://endpoint/file.php?someParams net::ERR_INTERNET_DISCONNECTED
和
HttpErrorResponse {headers: HttpHeaders, status: 0, statusText: "Unknown Error", url: null, ok: false, …}
error:ProgressEvent {isTrusted: true, lengthComputable: false, loaded: 0, total: 0, type: "error", …}
headers:HttpHeaders {normalizedNames: Map(0), lazyUpdate: null, headers: Map(0)}
message:"Http failure response for (unknown url): 0 Unknown Error"
name:"HttpErrorResponse"
ok:false
status:0
statusText:"Unknown Error"
url:null
__proto__:HttpResponseBase
第二个输出似乎是console.log(error);
,但是这一内容没有提供任何有用的信息( "Unknown Error"
)。 而且我不知道第一个错误消息是从哪里来的(控制台中的背景为红色),但这是包含实际有用信息的信息,我无法访问它。
我该如何确定
error => {
}
范围?
您可以执行以下操作:
import { Response } from '@angular/http';
(error: Response) => {
const text = error.text();
console.log(text);
});
但是我想这仍然会抛出“未知错误”。
从我的角度来看
GET https://endpoint/file.php?someParams net::ERR_INTERNET_DISCONNECTED
从浏览器本身派生而来,Angular无法访问。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.