Neglected Pizza Money

    express-better-ratelimit

    1.1.2 • Public • Published

    better-ratelimit NPM version Build Status Dependency Status Coveralls

    Express.js request rate limit middleware by IP with MemoryStore

    Install Nodei.co stats

    Install with npm

    $ npm install express-better-ratelimit
    $ npm test
    

    This package follows ferver

    Please read history.md for more info!

    • option message_429 deprecated >=v1.1.x, instead use accessLimited
    • option message_403 deprecated >=v1.1.x, instead use accessForbidden

    Usage

    Some demo example which is exactly example.js

    var express = require('express');
    var limit = require('./index');
     
    var app = express();
     
    app.use(limit({
      duration: 30000, //30 seconds
      max: 5
      //blackList: ['127.0.0.1']
    }));
     
    app.use(function helloWorld(req, res, next) {
      res.set('Content-Type', 'text/plain');
      res.status(200).send('Hello world');
      next();
    });
     
    var port = process.env.PORT || 3333;
    app.listen(port);
    console.log('Express server start listening on port %s', port);
    console.log('Type few times: curl -i http://localhost:%s', port);

    .expressBetterRatelimit

    With options through init you can control black/white lists, limit per ip and reset interval.

    • [options] {Object}
      • duration {Integer} Limit duration in milliseconds, default 1000 * 60 * 60 * 1 (1 hour)
      • whiteList {Array} All ips that won't be limited, default empty array
      • blackList {Array} All ips that always be limited and 403, default empty array
      • accessLimited {String} Message for all requests after limit, default 429: Too Many Requests.
      • accessForbidden {String} Message for limited/forbidden, default 403: This is forbidden area for you.
      • max {Integer} Max requests per ip, default 500
      • env {Boolean} Manage enviroment, for tests will use x-koaip header, default null
    • return {Function}

    Authors & Contributors

    Charlike Make Reagent author tips

    License MIT license

    Copyright (c) 2014 Charlike Make Reagent, contributors.
    Released under the MIT license.

    Install

    npm i express-better-ratelimit

    DownloadsWeekly Downloads

    3

    Version

    1.1.2

    License

    MIT

    Last publish

    Collaborators

    • vanchoy
    • tunnckocore