Skip to content

Latest commit

 

History

History
 
 

statuses

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

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

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