angularjs – 如何使用angular2拦截http错误?

前端之家收集整理的这篇文章主要介绍了angularjs – 如何使用angular2拦截http错误?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否存在类似于angular 1.x的Interceptor API的API?

我希望能够在应用程序启动时添加拦截

>只要返回401状态代码,就会显示登录对话框
>每当返回5xx状态代码时,都会显示一般错误消息

对于应用程序所做的每个http请求.

您可以创建自己的HTTPConnection来处理错误,并在引导时将其注入根应用程序组件.
export class CustomHTTPConnection implements Connection
{
}

然后在引导时注入它,如下所示

bootstrap([provider(Connection,{useClass:CustomHTTPConnection}]);

如果你不想提供自定义连接类,你可以为每个单独的请求执行它,因为Http返回一个observable,它是3个参数:onNext,onError,onCompleted.

您可以按如下方式使用它:

class Component
{
constructor(private httpService:HttpService){
}
onInit(){
 this.httpService.getData().subscribe(
  ()=>{},//on Next
  ()=>{}   //onError
}
}

猜你在找的Angularjs相关文章