Тайм-аут Обработка ошибок в Ionic Application - Ionic - PullRequest
0 голосов
/ 03 декабря 2018

Мое приложение Ionic имеет несколько страниц.Иногда возникает ошибка на стороне сервера, и мое приложение останавливается вместе с экраном загрузчика на несколько минут.Как обработать ошибку тайм-аута сервера?Я также хочу уведомить пользователя об ошибке и иметь кнопку для перезагрузки страницы или всего приложения!

Заранее спасибо.

1 Ответ

0 голосов
/ 03 декабря 2018

Чтобы отловить ошибку тайм-аута 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 })
    );
...