express-response-errors
TypeScript icon, indicating that this package has built-in type declarations

1.0.5 • Public • Published

express-response-errors NPM Version

Collection of custom response errors and middleware for Express.

Install

npm i express-response-errors -S

Configure

Add middleware to your application bootstrap file:

const { responseErrorHandler } = require('express-response-errors');
 
app.use(responseErrorHandler);

Usage 1

Pass HttpError exception with required code and optional message to Express from route handler.

const { HttpError } = require('express-response-errors');
 
// Ex. with default status text
next(new HttpError(418));
 
// Ex. with custom message
next(new HttpError(418, 'I only brew tea'));
 

Usage 2

Pass a specific http exception with optional message to Express from route handler.

const { ImATeapotError } = require('express-response-errors');
 
// Ex. with default status text
next(new ImATeapotError());
 
// Ex. with custom status text
next(new ImATeapotError('I only brew tea'));

Errors passed to Express without a message defaults to HTTP standard status text.

Errors are handled by middleware which sends related error message and status as a HTTP response.

Base error

  • HttpError

Named HTTP Errors

  • 400 BadRequestError
  • 401 UnauthorizedError
  • 402 PaymentRequiredError
  • 403 ForbiddenError
  • 404 NotFoundError
  • 405 MethodNotAllowedError
  • 406 NotAcceptableError
  • 407 ProxyAuthenticationRequiredError
  • 408 RequestTimeoutError
  • 409 ConflictError
  • 410 GoneError
  • 411 LengthRequiredError
  • 412 PreconditionFailedError
  • 413 PayloadTooLargeError
  • 414 UriTooLongError
  • 415 UnsupportedMediaTypeError
  • 416 RangeNotSatisfiableError
  • 417 ExpectationFailedError
  • 418 ImATeapotError
  • 421 MisdirectedRequestError
  • 422 UnprocessableEntityError
  • 423 LockedError
  • 424 FailedDependencyError
  • 425 UnorderedCollectionError
  • 426 UpgradeRequiredError
  • 428 PreconditionRequiredError
  • 429 TooManyRequestsError
  • 431 RequestHeaderFieldsTooLargeError
  • 451 UnavailableForLegalReasonsError
  • 500 InternalServerError
  • 501 NotImplementedError
  • 502 BadGatewayError
  • 503 ServiceUnavailableError
  • 504 GatewayTimeoutError
  • 505 HttpVersionNotSupportedError
  • 506 VariantAlsoNegotiatesError
  • 507 InsufficientStorageError
  • 508 LoopDetectedError
  • 509 BandwidthLimitExceededError
  • 510 NotExtendedError
  • 511 NetworkAuthenticationRequiredError

License

MIT

Package Sidebar

Install

npm i express-response-errors

Weekly Downloads

184

Version

1.0.5

License

MIT

Unpacked Size

16.6 kB

Total Files

10

Last publish

Collaborators

  • drodriques