express-default-errors

0.0.2 • Public • Published

express-default-errors

Default ExpressJS error-handling middleware.

Installation

$ npm install express-default-errors

Usage

express-default-errors provides simple middleware to catch default errors and serve custom errors.

var express = require('express')
var errorHandler = require('express-default-errors')

var app = express()
var router = express.Router()

// Valid route that will not cause any errors
router.get('/', function (req, res, next) {
  res.status(200)
  res.send('success')
})

// To signify unauthorized access, simple create a new Error object with status = 401
router.get('/restricted-route', function (req, res, next) {
  var err = new Error()
  err.status = 401
  next(err)
})

// Custom error message
router.get('/error-route', function (req, res, next) {
  // Will default to err.status = 500 unless err.status is explicitly set
  var err = new Error('A custom error was caused.')
  next(err)
})

// This is not recommended, but you could also set non-standard status codes.
// The default error message will be 'Internal Server Error' unless set.
router.get('/invalid-status-code-error-route', function (req, res, next) {
  var err = new Error()
  err.status = 299
  next(err)
})

// Any errors will be sent with the appropriate status code by the response object as:
// {error: 'My error message here'}

// The error handler should be used after all routers
app.use(router)
app.use(errorHandler())

app.listen(3000)

Default Errors

Setting the status code will cause the middleware to serve default error messages when calling new Error() without passing in any arguments, or if err.message is not set.

Status Code Default Message
400 Bad Request
401 Unauthorized
404 Not Found
500 Internal Server Error

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i express-default-errors

Weekly Downloads

1

Version

0.0.2

License

MIT

Last publish

Collaborators

  • justindeguzman