Angular 6+ / Повторить вызов службы при ошибке обратного вызова? - PullRequest
0 голосов
/ 26 октября 2018

У меня есть реализация сервисного вызова, который может выдать ошибку, возможно ли повторно запустить сервисный вызов, если он выдает ошибку?

captureMultiScreen(elem: Alert, overwrite: boolean, success?: Function, failed?: Function) {
this.spinnerValue = true;
const captureModel: Capture = {
  member_id: elem.member_id,
  gateway: elem.gateway,
  account: elem.account,
  alert_id: elem.alert_id,
  transaction_id: elem.transaction_id,
  overwrite: overwrite
};

this.captureService.CaptureScreenService(captureModel).subscribe(result => {
  this.capServiceResponse = result;
},
(error) => {
  // Retry "CaptureScreenService" here
}

Есть ли способ просто снова запустить сервисный вызов, если он достиг обратного вызова с ошибкой?

1 Ответ

0 голосов
/ 26 октября 2018

Вы можете использовать функцию повтор .В вашем коде это будет что-то вроде:

this.captureService.CaptureScreenService(captureModel)
  .pipe(retry(3)).subscribe(...)
...