首页 > 解决方案 > Ionic 应用程序中的超时错误处理 - Ionic

问题描述

我的 Ionic 应用程序有多个页面。有时,出现服务器端错误,我的应用程序在加载程序屏幕上停止了几分钟。如何处理服务器超时错误?我还想通知用户有一个错误,并有一个按钮来重新加载页面或整个应用程序!

提前致谢。

标签: angularionic-frameworkerror-handlingionic2

解决方案


为了捕获 HTTP 请求超时错误,RXjs 提供了 timeoutWith 操作符,如果 HTTP 请求空闲特定毫秒,它将发出可观察到的错误。

示例代码:

return this.httpClient.request<Response>(method, url, request).pipe(
      timeoutWith(10000, observableThrowError(new Error('Http Timeout exceeds'))),
      map((response: any) => ({ // handle success }),
      catchError((error: HttpErrorResponse) => => ({ // handle error })
    );

推荐阅读