🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

http-error-constructor

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

http-error-constructor

Constructors for HTTP errors

0.1.0
latest
Source
npm
Version published
Maintainers
1
Created
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

http

FAQs

Package last updated on 18 Dec 2015

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