@gpa/http-status-codes
v1.0.1
Published
All the valid HTTP status codes according to RFC9110 in a Typescript enum. Includes types and functions to check if a status code belongs to a specific class of status codes.
Downloads
1
Maintainers
Readme
@gpa/http-status-codes
Table of Contents
Installation
# Optional: install Typescript
npm install -D typescript @types/node
# Install the library
npm install @gpa/http-status-codes
Requirements
Node.js >= 18
typescript >= 5.0 (optional)
Usage
import { HttpStatusCode, HttpErrorStatusCode, HttpSuccessfulStatusCode } from '@gpa/http-status-codes';
function expressHandler(req, res) {
res.status(HttpStatusCode.Created_201).send({ /* ... */ });
}
// Accept any 4xx or 5xx status code
function sendErrorResponse(res, status: HttpErrorStatusCode, body) {
res.status(status).send(body);
}
// Accept any 2xx status code
function sendSuccessResponse(res, status: HttpSuccessfulStatusCode, body) {
res.status(status).send(body);
}
API
HttpStatusCode
Type: Enum
(Record<string, number>
)
Contains all the valid status codes according to RFC9110.
Http{Information,Successful,Redirection,ClientError,ServerError,Error}StatusCode
Type: number
These types are subsets of HttpStatusCode
and each one is a union of all the status codes included in the given class (Information: all
1xx status codes, Successful: all 2xx status codes, etc.). HttpErrorStatusCode
includes all the 4xx and 5xx status codes.
isValidStatusCode(value): boolean
Type: (value: number) => value is HttpStatusCode
This type guard returns true if the given value is a valid status code.
isValid{Information,Successful,Redirection,ClientError,ServerError,Error}StatusCode(value): boolean
Type: (value: number) => value is Http{Information,Successful,Redirection,ClientError,ServerError,Error}StatusCode
These type guards return true if the given value is a status code included in the given class. isValidErrorStatusCode
returns true if the
given value is a 4xx or 5xx status code.