0.8.0 • Published 1 year ago
@rxstack/exceptions v0.8.0
The RxStack Exceptions
The Exception component contains a set of standard exception classes. They set the correct HTTP status codes for REST calls and socket responses.
Installation
npm install @rxstack/exceptions --saveDocumentation
Standard exceptions
The following exception types, all of which are instances of base Exception class are available:
- 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: Satisfiable
- 417: ExpectationFailed
- 422: UnprocessableEntity
- 429: TooManyRequests
- 451: UnavailableForLegalReasons
- 500: HttpException
- 501: NotImplemented
- 502: BadGateway
- 503: Unavailable
- 507: InsufficientStorage
Exceptions contain the following fields:
name: The error namemessage: The error messagestack: The error stackdata: extra datastatusCode: The HTTP status codeorginalError: Original error
Helpers
To transform a native error to exception, you can use:
import {transformToException} from '@rxstack/exceptions'
// returns instance of Exception
transformToException(new Error('ops'));To transform an Exception to plain object:
import {exceptionToObject, Exception} from '@rxstack/exceptions'
// returns instance of Exception
exceptionToObject(new Exception('Ops'));License
Licensed under the MIT license.