使用HttpClient的Angular 6。目前没有实现拦截器。
我有一个管理员服务,在其中对MSGraph进行http调用。在这种情况下,我收到了一个400错误请求,我将其发送到通知处理程序。
我已经添加了console.log来确保错误块是否被触发,以及另一个console.log来查看从服务器返回的'data'是否是错误。
所有的console.logs都没有触发,但全局错误处理程序仍然在控制台中显示400错误请求响应。
我想能够使用此响应并显示用户友好的消息。
代码:
this.http.get(this.GRAPH_ROOT_URL + this.APP_ID, { headers }).subscribe(data => {
this.notification.done(data);
console.log(data);
}), error => {
this.notification.error(`Error getting users from Microsoft GRAPH API. Reason: ${error}`)
console.log("this is observable error", error);
}
() => console.log('Completed')
。订阅函数需要传入3个参数 - 成功、错误和完成,它们都是回调函数,因此您可以像成功和错误的函数一样在那里传递一些函数。我的想法是调用完成回调。 - Ludevik