Neovictorian Paisley Menswear

    @bbc/http-transport-rate-limiter

    1.0.1 • Public • Published

    http-transport-rate-limiter

    A global plugin for http-transport to utilise the simple-rate-limiter.

    Usage

    Configure the plugin as shown below. You can then use it as a global plugin for http-transport.

    const simpleRateLimiterPlugin = require('@bbc/http-transport-rate-limiter')(count, duration);

    The plugin takes two arguments:

    • count: The amount of calls that are allowed per time window
    • duration: The length of the time window to restrict calls within. In milliseconds.

    Example

    'use strict';
    
    const url = 'http://example.com/';
    const simpleRateLimiterPlugin = require('@bbc/http-transport-rate-limiter');
    
    const client = require('http-transport').createBuilder()
      .use(simpleRateLimiterPlugin(2, 1000)
      .createClient();
    
    client
      .get(url)
      .asResponse()
      .then((res) => {
        if (res.statusCode === 200) {
          console.log(res.body);
        }
      });

    Keywords

    none

    Install

    npm i @bbc/http-transport-rate-limiter

    DownloadsWeekly Downloads

    191

    Version

    1.0.1

    License

    Apache-2.0

    Unpacked Size

    4.86 kB

    Total Files

    10

    Last publish

    Collaborators

    • iuketaylor
    • jamiebower185
    • bucklm03
    • benjwheeler
    • onlyonehas
    • drrobharper
    • johnnewman
    • ibl
    • hjerling
    • simontanner
    • simongregory
    • andymsukbbc
    • magdalena.glanc
    • tonymcbeth