Create HTTP errors for Express, Koa, Connect, etc. with ease.
This is a Node.js module available through the
npm registry. Installation is done using the
npm install command:
$ npm install http-errors
var createError = require('http-errors')
var express = require('express')
var app = express()
app.use(function (req, res, next) {
if (!req.user) return next(createError(401, 'Please login to view this page.'))
next()
})
This is the current API, currently extracted from Koa and subject to change.
All errors inherit from JavaScript Error and the exported createError.HttpError.
expose - can be used to signal if message should be sent to the client,
defaulting to false when status >= 500headers - can be an object of header names to values to be sent to the
client, defaulting to undefined. When defined, the key names should all
be lower-casedmessage - the traditional error message, which should be kept short and all
single linestatus - the status code of the error, mirroring statusCode for general
compatibilitystatusCode - the status code of the error, defaulting to 500var err = createError(404, 'This video does not exist!')
status: 500 - the status code as a numbermessage - the message of the error, defaulting to node's text for that status code.properties - custom properties to attach to the objectvar err = new createError.NotFound()
code - the status code as a numbername - the name of the error as a "bumpy case", i.e. NotFound or InternalServerError.|Status Code|Constructor Name | |-----------|-----------------------------| |400 |BadRequest | |401 |Unauthorized | |402 |PaymentRequired | |403 |Forbidden | |404 |NotFound | |405 |MethodNotAllowed | |406 |NotAcceptable | |407 |ProxyAuthenticationRequired | |408 |RequestTimeout | |409 |Conflict | |410 |Gone | |411 |LengthRequired | |412 |PreconditionFailed | |413 |PayloadTooLarge | |414 |URITooLong | |415 |UnsupportedMediaType | |416 |RangeNotSatisfiable | |417 |ExpectationFailed | |418 |ImATeapot | |421 |MisdirectedRequest | |422 |UnprocessableEntity | |423 |Locked | |424 |FailedDependency | |425 |UnorderedCollection | |426 |UpgradeRequired | |428 |PreconditionRequired | |429 |TooManyRequests | |431 |RequestHeaderFieldsTooLarge | |451 |UnavailableForLegalReasons | |500 |InternalServerError | |501 |NotImplemented | |502 |BadGateway | |503 |ServiceUnavailable | |504 |GatewayTimeout | |505 |HTTPVersionNotSupported | |506 |VariantAlsoNegotiates | |507 |InsufficientStorage | |508 |LoopDetected | |509 |BandwidthLimitExceeded | |510 |NotExtended | |511 |NetworkAuthenticationRequired|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.