Type alias RetryMiddleware

RetryMiddleware: ((options?) => ConfiguredMiddleware)

Type declaration

    • (options?): ConfiguredMiddleware
    • Retry middleware

      Retries a request multiple times in case of an error (or until a custom condition is true).

      💡 By default, the request will be retried if the response status is not in the 2xx range.

      // Replace the default condition with a custom one to avoid retrying on 4xx errors:
      until: (response, error) => response && (response.ok || (response.status >= 400 && response.status < 500))
      import wretch from 'wretch'
      import { retry } from 'wretch/middlewares'

      wretch().middlewares([
      retry({
      // Options - defaults below
      delayTimer: 500,
      delayRamp: (delay, nbOfAttempts) => delay * nbOfAttempts,
      maxAttempts: 10,
      until: (response, error) => response && response.ok,
      onRetry: null,
      retryOnNetworkError: false,
      resolveWithLatestResponse: false,
      skip: undefined
      })
      ])

      // You can also return a Promise, which is useful if you want to inspect the body:
      wretch().middlewares([
      retry({
      until: response =>
      response.clone().json().then(body =>
      body.field === 'something'
      )
      })
      ])

      Parameters

      Returns ConfiguredMiddleware

Generated using TypeDoc