【发布时间】:2019-11-04 12:55:00
【问题描述】:
例如,当防火墙阻止我的后端中的任何一个时,我想显示带有 url 的弹出窗口。我应该得到 403 状态响应,但我一直得到状态 0。
我在这里看到类似的主题,但我不知道是否应该使用它:
Angular http returning status 0, but I expect 404
这个解决方案有什么好处吗?如果是,那么我应该如何或在哪里使用它?
在我的服务中应该只有 error.status == 403 但我无法弄清楚如何获得真实状态而不是 0。
我不认为 CORS 是问题,因为如果防火墙阻止我的请求,那么它永远不会到达后端。我说的对吗?
this.httpClient.request(request).toPromise()
.then(
(res: any) => { // Success
resolve(res.body);
},
(error: any) => { // Error
if (error.status == 403){
this.respondedWithError$.emit(error.url);
}
if (error.status == 0){
this.respondedWithError$.emit(error.error.currentTarget.__zone_symbol__xhrURL);
}
reject(error.error);
}
);
当前结果:
message: "Http failure response for (unknown url): 0 Unknown Error"
name: "HttpErrorResponse"
status: 0
statusText: "Unknown Error"
预期结果:
status: 403
【问题讨论】:
-
没有人知道如何获得该状态码?任何建议...解决方法...
标签: angular7 httpresponse firewall http-status-code-403