angular - Ionic 应用程序中的超时错误处理 - Ionic
问题描述
我的 Ionic 应用程序有多个页面。有时,出现服务器端错误,我的应用程序在加载程序屏幕上停止了几分钟。如何处理服务器超时错误?我还想通知用户有一个错误,并有一个按钮来重新加载页面或整个应用程序!
提前致谢。
解决方案
为了捕获 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 })
);
推荐阅读
- c - gcc 编译器优化 - 对汇编的影响
- amazon-web-services - AWS Cloudformation 堆栈卡在“UPDATE_ROLLBACK_IN_PROGRESS”状态
- javascript - Why is .reduce() requiring me to enter a starting value for the accumulator when using it to sum a specific key value pair in an object
- micropython - 如何控制 Sphero Original,例如使用 Micropython?
- javascript - 你将如何在 JavaScript 中测试响应式逻辑?
- c++ - 读取和存储 CSV 数据
- angular - 在 Angular 组件之间共享数据的更好方法
- c++ - 动态生成的函数的部分应用程序作为函数指针传递给结构
- python - 如何访问 for 循环中的元素?
- objective-c - 计算协调火星时间