Package detail

heads

zeke81MIT1.3.0

Make parallel HEAD requests for an array of URLs and get back their HTTP status codes.

healthcheck, uptime, http, head

readme

heads Build Status

Make parallel HEAD requests for an array of URLs and get back their HTTP status codes.

Why?

You've got a collection of URLs, and you want to make sure they're all working.

If you just need to check whether a URL is resolving, a HEAD request is preferable to a GET because it only downloads the response headers instead of the whole response body.

To keep things snappy, heads makes multiple requests in parallel instead of one at a time.

Installation

npm install heads --save

Usage

Heads expects an array of URL strings:

const heads = require("heads")
const urls = [
  'https://google.com',
  'https://github.com',
  'https://github.com/nonexistent-url'
]

heads(urls)
  .then(function(codes) {
   // [200, 200, 404]
   codes.every(code => code === 200)
  })
  .catch(function(err) {
    // handle error
  })

heads(urls, [options])

urls

Type: string, array

The URL(s) to check.

options

See the got options.

Node-style callbacks are supported too:

heads(urls, function(err, codes) { /*...*/ })

If you just need to look up one URL, pass it as an argument instead of an array:

heads('http://mysite.com').then(...)

Tests

npm install
npm test

Dependencies

  • async: Higher-order functions and common patterns for asynchronous code
  • got: Simplified HTTP requests
  • pify: Promisify a callback-style function

Dev Dependencies

  • tap-spec: Formatted TAP output like Mocha's spec reporter
  • tape: tap-producing test harness for node and browsers

License

MIT

Generated by package-json-to-readme