Have ideas to improve npm?Join in the discussion! »

    @zhangzisu/in-gfw
    TypeScript icon, indicating that this package has built-in type declarations

    1.2.2 • Public • Published

    in-gfw

    NPM version Travis AppVeyor Codecov David

    Identify if current location is located in mainland China.

    Install

    npm install in-gfw

    Usage

    const inGFW = require("in-gfw");
    inGFW().then(console.log); // `true` for located in mainland China
    inGFW.os().then(console.log); // `true` for system located in mainland China
    inGFW.net().then(console.log); // `true` for network located in mainland China

    API

    inGFW(blockedHost, cnHost);
    inGFW.sync(blockedHost, cnHost); // Synchronous version of `inGFW()`

    Get result by inGFW.os() and fallback to inGFW.net()

    inGFW.os();
    inGFW.osSync(); // Synchronous version of `inGFW.os()`
    • Windows: Check if current location settings is PRC.

      Control Panel: Regional and language -> Location

    • POSIX systems: Check if timezone is set to Beijing, Chongqing, Shanghai, Urumqi or PRC.
    inGFW.net(blockedHost, cnHost);
    inGFW.netSync(blockedHost, cnHost); // Synchronous version of `inGFW.net()`

    Based on the speed of network access to identify if current location is located in mainland China.

    • blockedHost

      Type: string|URL

      Default: "www.npmjs.com"

      host for speed test that blocked by GFW

    • cnHost

      Type: string|URL

      Default: "npm.taobao.org"

      host for speed test that mirrored in mainland China.

    Install

    npm i @zhangzisu/in-gfw

    DownloadsWeekly Downloads

    4

    Version

    1.2.2

    License

    MIT

    Unpacked Size

    15.7 kB

    Total Files

    9

    Last publish

    Collaborators

    • avatar