Skip to content

Latest commit

 

History

History
97 lines (83 loc) · 5.24 KB

README.md

File metadata and controls

97 lines (83 loc) · 5.24 KB

http-status-typed

This is http-status-codes but the status codes are wrapped in an enum so you can have a Typescript type for the status codes. The size of the package is also incredibly small (4kb uncompressed after tree shaking).

Version 1.0.1 significantly reduces the size of the package. Good for browsers now.

Version 1.0.2 supports both CommonJS and ES Modules but doubles the size of the package (since we're now publishing two files).

Version 2.0.0 only supports ES Modules.

Version 2.0.1 removes unneeded artifacts and reduces the size of the package.

Installation

npm install http-status-typed --save

Usage (Typescript)

import HttpStatusCode from 'http-status-typed';

interface ApiResponse {
    status: HttpStatusCode;
    response: object;
}

function handleResponse(): ApiResponse {
    return {
        status: HttpStatusCode.OK;
        response: {
            body: "😎"
        };
    }
}

Codes

Constant Code Status Text
ACCEPTED 202 Accepted
BAD_GATEWAY 502 Bad Gateway
BAD_REQUEST 400 Bad Request
CONFLICT 409 Conflict
CONTINUE 100 Continue
CREATED 201 Created
EXPECTATION_FAILED 417 Expectation Failed
FAILED_DEPENDENCY 424 Failed Dependency
FORBIDDEN 403 Forbidden
GATEWAY_TIMEOUT 504 Gateway Timeout
GONE 410 Gone
HTTP_VERSION_NOT_SUPPORTED 505 HTTP Version Not Supported
IM_A_TEAPOT 418 I'm a teapot
INSUFFICIENT_SPACE_ON_RESOURCE 419 Insufficient Space on Resource
INSUFFICIENT_STORAGE 507 Insufficient Storage
INTERNAL_SERVER_ERROR 500 Server Error
LENGTH_REQUIRED 411 Length Required
LOCKED 423 Locked
METHOD_FAILURE 420 Method Failure
METHOD_NOT_ALLOWED 405 Method Not Allowed
MOVED_PERMANENTLY 301 Moved Permanently
MOVED_TEMPORARILY 302 Moved Temporarily
MULTI_STATUS 207 Multi-Status
MULTIPLE_CHOICES 300 Multiple Choices
NETWORK_AUTHENTICATION_REQUIRED 511 Network Authentication Required
NO_CONTENT 204 No Content
NON_AUTHORITATIVE_INFORMATION 203 Non Authoritative Information
NOT_ACCEPTABLE 406 Not Acceptable
NOT_FOUND 404 Not Found
NOT_IMPLEMENTED 501 Not Implemented
NOT_MODIFIED 304 Not Modified
OK 200 OK
PARTIAL_CONTENT 206 Partial Content
PAYMENT_REQUIRED 402 Payment Required
PERMANENT_REDIRECT 308 Permanent Redirect
PRECONDITION_FAILED 412 Precondition Failed
PRECONDITION_REQUIRED 428 Precondition Required
PROCESSING 102 Processing
PROXY_AUTHENTICATION_REQUIRED 407 Proxy Authentication Required
REQUEST_HEADER_FIELDS_TOO_LARGE 431 Request Header Fields Too Large
REQUEST_TIMEOUT 408 Request Timeout
REQUEST_TOO_LONG 413 Request Entity Too Large
REQUEST_URI_TOO_LONG 414 Request-URI Too Long
REQUESTED_RANGE_NOT_SATISFIABLE 416 Requested Range Not Satisfiable
RESET_CONTENT 205 Reset Content
SEE_OTHER 303 See Other
SERVICE_UNAVAILABLE 503 Service Unavailable
SWITCHING_PROTOCOLS 101 Switching Protocols
TEMPORARY_REDIRECT 307 Temporary Redirect
TOO_MANY_REQUESTS 429 Too Many Requests
UNAUTHORIZED 401 Unauthorized
UNPROCESSABLE_ENTITY 422 Unprocessable Entity
UNSUPPORTED_MEDIA_TYPE 415 Unsupported Media Type
USE_PROXY 305 Use Proxy