@js-thing/http-status-codes
Version:
Contains properly documented HTTP status code enums, reason phrases and helpers as defined in RFC
106 lines (81 loc) • 4.19 kB
Markdown
[](https://badge.fury.io/js/%40js-thing%2Fhttp-status-codes)

[](https://codecov.io/gh/js-thing/http-status-codes)
[](https://badge.fury.io/gh/js-thing%2Fhttp-status-codes)



## Http Status Codes
This library is a complete collection of all `Http Status Codes` and `Reason Phrases` along with `helper functions` with _no dependencies_ and is _open source_ written in typescript.
Use with `Typescript` or `Javascript` in both _server_ or _client_ side.
### Covers status codes defined in
- Hypertext Transfer Protocol (HTTP/1.0) defined in
[RFC 1945](https://datatracker.ietf.org/doc/html/rfc1945)
- Hypertext Transfer Protocol (HTTP/1.1) defined in
[RFC 2616](https://www.ietf.org/rfc/rfc2616.txt)
- Web-based Distributed Authoring and Versioning (WebDAV) defined in
[RFC 2518](https://datatracker.ietf.org/doc/html/rfc2518)
View project on [GitHub](https://github.com/js-thing/http-status-codes)
---
### Documentation
Each and every member/property/function of the library are properly documented to get comprehensive inforation along with supporting links to original sources.
An example of VS Code IntelliSense showing the Unauthorized enum member.

The complete documentation of this project can be found in this [link](https://http-status-codes.js-thing.com).
---
### Installation
Install from [npm](https://www.npmjs.com/package/@js-thing/http-status-codes)
```sh
npm install @js-thing/http-status-codes
```
---
### Import it to your project
Import the library to your project
```javascript
import HttpStatusCodes, {
HttpInformationStatusCodes,
HttpSuccessStatusCodes,
HttpRedirectionStatusCodes,
HttpClientErrorStatusCodes,
HttpServerErrorStatusCodes,
} from '@js-thing/http-status-codes';
```
Or
```javascript
const {
HttpInformationStatusCodes,
HttpSuccessStatusCodes,
HttpRedirectionStatusCodes,
HttpClientErrorStatusCodes,
HttpServerErrorStatusCodes,
HttpStatusCodes,
} = require('@js-thing/http-status-codes');
```
Import default using require
```javascript
const HttpStatusCodes = require('@js-thing/http-status-codes').default;
```
---
### Usage
The `HttpStatusCodes` enum is the super set of `HttpInformationStatusCodes`, `HttpSuccessStatusCodes`, `HttpRedirectionStatusCodes`, `HttpClientErrorStatusCodes` and `HttpServerErrorStatusCodes` enums,
```javascript
// use the combined enum to access any status code
const code = HttpStatusCodes.Continue; // code = 100
const code = HttpStatusCodes.Ok; // code = 200
const code = HttpStatusCodes.Found; // code = 302
const code = HttpStatusCodes.BadRequest; // code = 400
const code = HttpStatusCodes.InternalServerError; // code = 500
// Or use the individual enum group
const code = HttpInformationStatusCodes.Continue; // code = 100
const code = HttpSuccessStatusCodes.Ok; // code = 200
const code = HttpRedirectionStatusCodes.Found; // code = 302
const code = HttpClientErrorStatusCodes.BadRequest; // code = 400
const code = HttpServerErrorStatusCodes.InternalServerError; // code = 500
```
---
### Licence
The documentation for this project is directly sourced from
[MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status) by
[Mozilla Contributors](https://developer.mozilla.org/en-US/docs/MDN/About/contributors.txt) is licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/)
The project excluding the documentation is licenced under
[MIT](https://github.com/js-thing/http-status-codes/raw/main/LICENSE)