为什么我在subscirbe(()=> {},err => {here}中的错误与浏览器控制台中的错误不同

时间:2016-03-01 08:43:24

标签: angular

这是loadSize()函数,它在getTotalNumberCampaigns()类中调用campaignsService函数。

 loadSize() {
    this.campaignsService.getTotalNumberCampaigns().subscribe(value => {//async call
        this.campaignSize = value;
    }, (err: any) => { console.log(err.status); console.log(err);}

    );
}

这是我的getTotalNumberCampaigns()

 getTotalNumberCampaigns(): Observable<number> {
    return this.http.get(`${this.apiUrl}/Count`, { headers: this.headers })
        .map<any>(res => res.json())
}

我启动后端api一切正常,现在我停止api并刷新我的页面。它将触发console.log(err.status); console.log(错误);因为它的连接失败了。但实际上我在浏览器控制台中获得了200状态,它表示这是一个502错误。

有谁告诉我为什么?

enter image description here

1 个答案:

答案 0 :(得分:0)

实际上,在连接失败的情况下,您在错误回调中收到的响应对象是错误的,因为其type属性的值为3ERROR )。有点奇怪的是,似乎执行了预检请求并收到了响应。您能否通过开发工具中的“网络”标签向我们提供详细信息(点击“选项http://localhost:...”)?

有关详细信息,请参阅此问题: