Socket
Socket
Sign inDemoInstall

http-error-constructor

Package Overview
Dependencies
7
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    http-error-constructor

Constructors for HTTP errors


Version published
Weekly downloads
90
decreased by-42.68%
Maintainers
1
Install size
46.8 kB
Created
Weekly downloads
 

Readme

Source

http-error-constructor

Constructors for HTTP errors

NPM version Build status

Note: This module will only work with Node.js >= 4.0.

Installation

npm install http-error-constructor

Usage

new HttpError([statusCode=500], [messageOrProperties], [properties])

new HttpError.<StatusName>([messageOrProperties], [properties])

StatusName is UpperCamelCased status name (description)

new HttpError[<statusCode>]([messageOrProperties], [properties])

Parameters

  • [statusCode=500] {Number} - Three-digit integer code. Status Code Registry
  • [messageOrProperties] {String | Object} - String message or object with additional properties
  • [properties] {Object} - Additional properties (used only if messageOrProperties is string)

Examples

var HttpError = require('http-error-constructor');

var err = new HttpError(400);

// err.name - 'BadRequest'
// err.statusCode - 400
// err.status - 400
// err.message - 'Bad Request'

// name, statusCode and status are non-enumerable and therefore ignored in JSON.stringify(err):
// '{"message": "Bad Request"}'

With custom message and additional properties:

var err = new HttpError(400, 'Validation Failed', {
    fields: {
        phoneNumber: 'Invalid format'
    }
});

/* or you can include message in the properties object
var err = new HttpError(400, {
    message: 'Validation Failed',
    fields:  {
        phoneNumber: 'Invalid format'
    }
});
*/

// err.statusCode - 400
// err.status - 400
// err.message - 'Validation Failed'
// err.fields - { phoneNumber: 'Invalid format' }

// JSON.stringify(err) - '{"message": "Bad Request", "fields": { "phoneNumber": "Invalid format" } }'

Using specific error constructor:

var properties = {
    message: 'Validation Failed',
    fields:  {
        phoneNumber: 'Invalid format'
    }
};

var err = new HttpError.BadRequest(properties); // or new HttpError[400](properties)

// err instanceof HttpError - true
// err instanceof HttpError.BadRequest - true
// err instanceof HttpError[400] - true

You can use custom status codes:

var err = new HttpError(471, 'Custom Error');

// err.name - '471 Error'
// err.statusCode - 471
// err.status - 471
// err.message - 'Custom Error'

Tests

npm install
npm test

License

MIT

Keywords

FAQs

Last updated on 18 Dec 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