Nevertheless! Party Metaphorically

    think-ip-filter

    1.0.3 • Public • Published

    think-ip-filter

    IP filter middleware for ThinkJS 2.0, support whiteList & blackList.

    Install

    npm install think-ip-filter --save

    How to use

    register middleware

    create file if not exist, src/common/bootstrap/middleware.js.

    import ipFilter from 'think-ip-filter';
    think.middleware('ip_filter', ipFilter);

    config hook

    create file if not exist, src/common/config/hook.js.

    export default {
      request_begin: ['prepend', 'ip_filter']
    }

    config ip whiteList or blackList

    add ip_filter config in file src/common/config/config.js.

    black list

    export default {
      ip_filter: ['111.222.333.444', '121.233.120.11']
    }

    white list

    export default {
      ip_filter: {
        whiteList: ['123.222.122.11', '22.33.11.22']
      }
    }

    * rule

    export default {
      ip_filter: {
        whiteList: ['123.*.122.11', '*.33.11.22']
      }
    }

    RegExp rule

    export default {
      ip_filter: {
        whiteList: [/^10\./]
      }
    }

    dynamic load

    dynamic load by function, must be return Promise.

    export default {
      ip_filter: function(){
        //such as: get from db
        return Promise.resolve(['111.*']);
      }
    }

    LICENSE

    MIT

    Install

    npm i think-ip-filter

    DownloadsWeekly Downloads

    0

    Version

    1.0.3

    License

    MIT

    Last publish

    Collaborators

    • welefen