UNPKG

@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
[![npm version](https://badge.fury.io/js/%40js-thing%2Fhttp-status-codes.svg)](https://badge.fury.io/js/%40js-thing%2Fhttp-status-codes) ![Build status](https://github.com/js-thing/http-status-codes/actions/workflows/node.js.yml/badge.svg) [![codecov](https://codecov.io/gh/js-thing/http-status-codes/branch/main/graph/badge.svg?token=lSpAkoUYjc)](https://codecov.io/gh/js-thing/http-status-codes) [![GitHub version](https://badge.fury.io/gh/js-thing%2Fhttp-status-codes.svg)](https://badge.fury.io/gh/js-thing%2Fhttp-status-codes) ![dependencies](https://status.david-dm.org/gh/js-thing/http-status-codes.svg) ![dev-dependencies](https://status.david-dm.org/gh/js-thing/http-status-codes.svg?type=dev) ![npm-downloads](https://img.shields.io/npm/dt/@js-thing/http-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. ![image](https://github.com/js-thing/http-status-codes/raw/main/VS_Code_IntelliSense.png) 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)