Socket
Socket
Sign inDemoInstall

statuses

Package Overview
Dependencies
0
Maintainers
6
Versions
14
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    statuses

HTTP status utility


Version published
Weekly downloads
47M
decreased by-9.83%
Maintainers
6
Install size
10.8 kB
Created
Weekly downloads
 

Package description

What is statuses?

The 'statuses' npm package provides an easy way to handle HTTP status codes. It allows you to look up status codes by the code number or by the status message. It also provides a way to retrieve the message associated with a particular status code or vice versa.

What are statuses's main functionalities?

Get HTTP status code message

Retrieve the message associated with a specific HTTP status code.

"use strict";
const statuses = require('statuses');
const message = statuses[404]; // 'Not Found'

Get HTTP status code by message

Retrieve the status code by specifying the message.

"use strict";
const statuses = require('statuses');
const code = statuses('Not Found'); // 404

Check if status code is a redirect

Check if a given status code is classified as a redirect (3xx).

"use strict";
const statuses = require('statuses');
const isRedirect = statuses.redirect[301]; // true

Get the status code range

Determine if a status code falls within a specific range, such as informational (1xx), success (2xx), etc.

"use strict";
const statuses = require('statuses');
const isInformational = statuses.empty[204]; // true
const isSuccess = statuses.success[200]; // true

Other packages similar to statuses

Readme

Source

Statuses

NPM Version NPM Downloads Node.js Version Build Status Test Coverage

HTTP status utility for node.

API

var status = require('statuses')

var code = status(Integer || String)

If Integer or String is a valid HTTP code or status message, then the appropriate code will be returned. Otherwise, an error will be thrown.

status(403) // => 403
status('403') // => 403
status('forbidden') // => 403
status('Forbidden') // => 403
status(306) // throws, as it's not supported by node.js

status.codes

Returns an array of all the status codes as Integers.

var msg = status[code]

Map of code to status message. undefined for invalid codes.

status[404] // => 'Not Found'

var code = status[msg]

Map of status message to code. msg can either be title-cased or lower-cased. undefined for invalid status messages.

status['not found'] // => 404
status['Not Found'] // => 404

status.redirect[code]

Returns true if a status code is a valid redirect status.

status.redirect[200] // => undefined
status.redirect[301] // => true

status.empty[code]

Returns true if a status code expects an empty body.

status.empty[200] // => undefined
status.empty[204] // => true
status.empty[304] // => true

status.retry[code]

Returns true if you should retry the rest.

status.retry[501] // => undefined
status.retry[503] // => true

statuses/codes.json

var codes = require('statuses/codes.json')

This is a JSON file of the status codes taken from require('http').STATUS_CODES. This is saved so that codes are consistent even in older node.js versions. For example, 308 will be added in v0.12.

Adding Status Codes

The status codes are primarily sourced from http://www.iana.org/assignments/http-status-codes/http-status-codes-1.csv. Additionally, custom codes are added from http://en.wikipedia.org/wiki/List_of_HTTP_status_codes. These are added manually in the lib/*.json files. If you would like to add a status code, add it to the appropriate JSON file.

To rebuild codes.json, run the following:

# update src/iana.json
npm run fetch
# build codes.json
npm run build

Keywords

FAQs

Last updated on 17 May 2016

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc