Have opinions about JavaScript? We want to hear them. Take the 2018 JavaScript Ecosystem Survey »

is-online

8.0.0 • Public • Published

is-online Build Status

Check if the internet connection is up

Works in Node.js and the browser (with a bundler).

In the browser you have navigator.onLine, but it's useless as it only tells you if there's a local connection, and not whether the internet is accessible.

Install

$ npm install is-online

Usage

const isOnline = require('is-online');
 
(async () => {
    console.log(await isOnline());
    //=> true
})();

API

isOnline([options])

options

Type: Object

timeout

Type: number
Default: 5000

Milliseconds to wait for a server to respond.

version

Type: string
Values: v4 v6
Default: v4

Internet Protocol version to use. This is an advanced option that is usually not neccessary to be set, but it can prove useful to specifically assert IPv6 connectivity.

How it works

The following checks are run in parallel:

  • Retrieve icanhazip.com via HTTPS
  • Query myip.opendns.com on OpenDNS (Node.js only)
  • Retrieve Apple's Captive Portal test page (Node.js only)

When the first check succeeds, the returned Promise is resolved to true.

Maintainers

Related

License

MIT © Sindre Sorhus

install

npm i is-online

Downloadsweekly downloads

22,687

version

8.0.0

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
  • avatar
Report a vulnerability