HTTP请求偶尔可能会失败。 RXJS为我们提供了一个retry
运算符,该操作员可以帮助我们在失败时再次呼叫。让我们看看如何通过指数向后进行实现重试,即随着每个请求而增长的延迟。
回到时代,可以使用zip
操作员实现指数向后,以跟踪索引或保存索引。当前,可以以更简单的方式实现它。
让我们首先查看函数签名。
retry<T>(configOrCount: number | RetryConfig = Infinity): MonoTypeOperatorFunction<T>
configOrCount
的类型是number
或RetryConfig
的结合。数字是自我解释的,它是错误后的最大恢复次数。我们真正感兴趣的是RetryConfig
。
链接:
https://rxjs.dev/api/index/function/retry
https://rxjs.dev/api/index/interface/RetryConfig
https://github.com/alex-okrushko/backoff-rxjs/blob/master/src/operators/retryBackoff.ts