1.1.4 • Published 4 years ago
@typescript-error/http v1.1.4
@typescript-error/http 🔥
This is a library, which provides HTTP error classes (NotFoundError, InternalServerError, ...),
which can also simply be extended.
Table of Contents
Installation
npm install @typescript-error/http --saveUsage
The usage is pretty easy, just import one of the client or server error classes and use them
in throw- & catch- statements.
Basic
import {
InternalServerError,
NotFoundError
} from "@typescript-error/http";
const clientError = new NotFoundError();
console.log(clientError.getOption('statusCode'));
// 404
console.log(clientError.getOption('logMessage'));
// false
console.log(clientError.getOption('code'));
// NOT_FOUND
// ------------------------------------
const serverError = new InternalServerError({
logLevel: 'warning'
});
console.log(serverError.getOption('statusCode'));
// 500
console.log(serverError.getOption('logMessage'));
// true
console.log(serverError.getOption('code'));
// INTERNAL_SERVER_ERROR
console.log(serverError.getOption('logLevel'));
// warningAnother way to use the predefined error classes is to extend them,
with own options.
Extend
import {
ErrorOptions,
mergeErrorOptions,
NotFoundError
} from "@typescript-error/http";
class UserNotFound extends NotFoundError {
constructor(options?: ErrorOptions) {
super(mergeErrorOptions(
{
message: 'The user was not found.',
code: 'USER_NOT_FOUND'
},
...(options ? options : {})
));
}
}Types
The following HTTP classes are predefined:
Client
- 400
BadRequestError - 401
UnauthorizedError - 403
ForbiddenError - 404
NotFoundError - 405
MethodNotAllowedError - 406
NotAcceptableError - 407
ProxyAuthenticationRequiredError - 408
RequesTimeoutError - 409
ConflictError - 410
GoneError - 411
LengthRequiredError - 412
PreconditionFailedError - 413
RequestEntityTooLargeError - 414
RequestUriTooLongError - 415
UnsupportedMediaTypeError - 416
RequestRangeNotSatisfiedError - 417
ExpectationFailedError - 418
ImATeapotError - 420
EnhanceYourCalmError - 422
UnprocessableEntityError - 423
LockedError - 424
FailedDependencyError - 424
UnorderedCollectionError - 426
UpgradeRequiredError - 428
PreconditionRequiredError - 429
TooManyRequestError - 431
RequestHeaderFieldsTooLargeError - 444
NoResponseError - 449
RetryWithError - 450
BlockedByWindowsParentError - 499
ClientClosedRequestError
Server
- 500
InternalServerError - 501
NotImplementedError - 502
BadGatewayError - 503
ServiceUnavailableError - 504
GatewayTimeoutError - 505
HTTPVersionNotSupportedError - 506
VariantAlsoNegotiates - 507
InsufficientStorageError - 508
LoopDetectedError - 509
BandwidthLimitExceededError - 510
NotExtendedError - 511
NetworkAuthenticationRequiredError
1.1.4
4 years ago
1.1.1
4 years ago
1.1.0
4 years ago
1.1.3
4 years ago
1.1.2
4 years ago
1.0.2
4 years ago
1.0.1
4 years ago
1.0.3
4 years ago
0.1.0
4 years ago
0.1.2
4 years ago
0.1.1
4 years ago
0.1.3
4 years ago
0.0.7
4 years ago
0.0.6
4 years ago
0.0.5
4 years ago
0.0.3
4 years ago
0.0.4
4 years ago
0.0.2
4 years ago
0.0.1
4 years ago