我在我的Angular2项目中有一个loadSize()函数,它调用了我的服务中的getTotalNumberCampaigns()函数并返回一个observable。我订阅这个observable以获取结果。
这是我的loadSize()函数:
loadSize() {
this.campaignsService.getTotalNumberCampaigns().subscribe(value => {//async call
this.campaignSize = value;
}, (err)=> {}
);
}
假设我的getTotalNumberCampaigns()出现错误,会触发subscribe中的err=>{}。我的问题是我如何知道http响应状态码,以便我可以指导用户采取不同的操作(如果是连接失败(502),用户应该刷新。如果是access_token到期(500),页面应该跳转到登录页面)
这是我的服务类中的getTotalNumberCampaigns()
getTotalNumberCampaigns(): Observable<number> {
return this.http.get(`${this.apiUrl}/Count`, { headers: this.headers })
.map<number>(res => <number>res.json())
}