http-errors
Create HTTP errors for Express, Koa, Connect, etc. with ease.
Install
This is a Node.js module available through the npm registry. Installation is done using the npm install
command:
Example
API
This is the current API, currently extracted from Koa and subject to change.
Error Properties
expose
- can be used to signal ifmessage
should be sent to the client, defaulting tofalse
whenstatus
>= 500headers
- can be an object of header names to values to be sent to the client, defaulting toundefined
. 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, mirroringstatusCode
for general compatibilitystatusCode
- the status code of the error, defaulting to500
createError([status], [message], [properties])
Create a new error object with the given message msg
. The error object inherits from createError.HttpError
.
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 object
createError([status], [error], [properties])
Extend the given error
object with createError.HttpError
properties. This will not alter the inheritance of the given error
object, and the modified error
object is the return value.
status
- the status code as a numbererror
- the error object to extendproperties
- custom properties to attach to the object
new createError[code || name]([msg]))
Create a new error object with the given message msg
. The error object inherits from createError.HttpError
.
code
- the status code as a numbername
- the name of the error as a "bumpy case", i.e.NotFound
orInternalServerError
.
List of all constructors
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
License
Last updated