Socket
Socket
Sign inDemoInstall

hapi-limiter

Package Overview
Dependencies
2
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    hapi-limiter

Rate limiting plugin for Hapi


Version published
Maintainers
1
Created

Readme

Source

Build Status Coverage Status npm version dependencies

hapi-limiter

Rate limiting plugin for Hapi, inspired by hapi-ratelimit, but using hapi's builtin server cache interface.

Installation

npm install hapi-limiter

Usage

server.register(require('hapi-limiter'), function(err) {
  Hoek.assert(!err, 'uh oh!');
});

server.route({
  path: '/foo',
  method: 'get',
  handler: function(request, reply) {
    reply('remaining requests: ', request.plugins[hapi-limiter].remaining);
  },
  config:{
    plugins: {
      'hapi-limiter': {
        enable: true
      }
    }
  }
});

Configuration

Plugin

These settings are global, and applicable values are applied as defaults to each rate limted route

SettingDescriptionDefault
ttlLength of time that a limit should be enforced for, specified in miliseconds1000 * 60 * 15
limitMaximum allowed API calls per period specified by ttl15
cacheClientA Hapi CacheClient, or similarly functioning interface.undefined
cacheA Hapi Catbox policydefault ttl and segment, using default server cache
generateKeyFuncA function with the signature function(request) {} that returns the caching keyreturns method + api path + ip address
Route Configuration
SettingDescriptionDefault
enableboolean or truthy value, indicating if route is to be rate limitedundefined
ttlLength of time that a limit should be enforced for, specified in miliseconds1000 * 60 * 15
limitMaximum allowed API calls per period specified by ttl15

FAQs

Last updated on 27 May 2015

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc