fetch-rate-limit-util

handle fetch rate limits

Usage no npm install needed!

<script type="module">
  import fetchRateLimitUtil from 'https://cdn.skypack.dev/fetch-rate-limit-util';
</script>

README

npm License minified size downloads GitHub Issues Build Status Styled with prettier Commitizen friendly Known Vulnerabilities Coverage Status

fetch-rate-limit-util

Handle fetch rate limits. Waits and retriy after rate limit rest time has reached

import { rateLimitHandler } from "fetch-rate-limit-util";

const response = rateLimitHandler( () => fetch(someURL));

API

Table of Contents

MIN_WAIT_MSECS

Minimum wait time in msecs.

Type: number

MAX_RETRIES

Max # of wait retries.

Type: number

defaultWaitDecide

Decide about the time to wait for a retry.

Parameters

  • millisecondsToWait Integer ## of milliseconds to wait before retry
  • rateLimitRemaining Integer parsed from "x-ratelimit-remaining" header
  • nthTry Integer how often have we retried the request already
  • response Object as returned from fetch

Returns Integer milliseconds to wait for next try or < 0 to deliver current response

rateLimitHandler

Waits and retries after rate limit reset time has reached.

Parameters

  • fetcher executes the fetch operation
  • waitDecide (optional, default defaultWaitDecide)

install

With npm do:

npm install fetch-rate-limit-util

license

BSD-2-Clause