Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

limits

Package Overview
Dependencies
Maintainers
5
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

limits

Sets the limit to upload size and processing time for incoming and outgoing requests.

  • 1.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
5
Created
Source

limits

Simple express/connect middleware to set limit to upload size, set request timeout etc.

It is responsible for:

Enforcing HTTP timeouts

  • Setting a global absolute timeout for both incoming and outgoing connections In config, use: { global_timeout: [millis] }, if 0 - no timeout is set

  • Setting a global absolute timeout for incoming connections only In config, use: { inc_req_timeout: [millis] }, if 0 - no timeout is set

  • Setting a global absolute timeout for outgoing connections only In config, use: { out_req_timeout: [millis] }, if 0 - no timeout is set

  • Setting idle timeout for incoming connections In config, use: { idle_timeout: [millis] }, if 0 - no timeout is set

Note: Apart from idle_timeout, each of these settings applies to the complete roundtrip request/response cycle. For example, inc_req_timeout applies to the interval from when the server receives an incoming request to the time that the corresponding response is sent. out_req_timeout applies to the interval from when a client request is sent to the time the response is received (and the socket freed).

Warning for Node v4.x: The outgoing request timeout mechanism does not work for keepAlive connections in Node v4.x and earlier. Instead, in Node v4.x, this timeout is applied only if the outgoing ClientRequest is marked as not keepAlive at the time the socket is attached to the request.

Ancillary HTTP limits

  • Preventing upload completely. In config, use: { file_uploads: false }

  • Limiting the total size of upload In config, use: { post_max_size: [bytes] }, if 0, this functionality is disabled

  • Limiting the length of uri In config, use: { uri_max_length: [number] }, if 0 this functionality is disabled

  • Setting the http.Agent.defaultMaxSockets for the entire app. In config, use: { max_sockets: [number] }, if 0 - nothing will be set. Note: this applies only to the http global agent.

  • Setting incoming/outgoing socket noDelay (i.e. disable Nagle's algorithm) In config, use: { socket_no_delay: [boolean] }, if false - nothing will be set.

To completely disable module use config, { enable: false }.

Functionality for a specific feature will be disabled if the corresponding config attribute is not set.

install

With npm do:

npm install limits

usage

var express = require('express'),
    limits = require('limits');

var app = express();

var limits_config = {
    enable: true,
    file_uploads: true,
    post_max_size: 2000000
}

app.use(limits(limits_config));

app.listen(8000);

Build Status

Build Status

Node Badge

NPM

FAQs

Package last updated on 23 May 2018

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc