我通过发送用户的用户名和密码来呼叫网络服务。如果给出了错误的用户名和密码,我会收到401 UNAUTHORIZED错误。我希望能够在401发生时捕获,以便在屏幕上输出错误消息。
以下是调用服务的代码:
return this.client.get<User>(this.BASEURL + 'api/id', new User(), null, encodedString)
.map(result => {
// If authorized, store the relevant information
if (result) {
result = new User().deserialize(result);
}
this.user.next(result);
return result;
}, this)
.catch(this.handleError);
我试图在整个事情中使用try catch,但它没有做任何事情(我因为异步而猜测)。我也尝试过console.log(结果);在if(结果)之后,但由于401错误,我从未到达.map。我不确定如何处理这个问题。谢谢!