Lawsun d230cfbce0 first commit 1 سال پیش
..
test d230cfbce0 first commit 1 سال پیش
.autod.conf.js d230cfbce0 first commit 1 سال پیش
.editorconfig d230cfbce0 first commit 1 سال پیش
.eslintrc d230cfbce0 first commit 1 سال پیش
.travis.yml d230cfbce0 first commit 1 سال پیش
History.md d230cfbce0 first commit 1 سال پیش
README.md d230cfbce0 first commit 1 سال پیش
appveyor.yml d230cfbce0 first commit 1 سال پیش
index.js d230cfbce0 first commit 1 سال پیش
package.json d230cfbce0 first commit 1 سال پیش

README.md

egg-path-matching

NPM version build status Test coverage

Installation

$ npm install egg-path-matching

Usage

const pathMatching = require('egg-path-matching');
const options = {
  ignore: '/api', // string will use parsed by path-to-regexp
  // support regexp
  ignore: /^\/api/,
  // support function
  ignore: ctx => ctx.path.startsWith('/api'),
  // support Array
  ignore: [ ctx => ctx.path.startsWith('/api'), /^\/foo$/, '/bar'],
  // support match or ignore
  match: '/api',
};

const match = pathMatching(options);
assert(match('/api') === true);
assert(match('/api/hello') === true);
assert(match('/api') === true);

options

  • match {String | RegExp | Function | Array} - if request path hit options.match, will return true, otherwise will return false.
  • ignore {String | RegExp | Function | Array} - if request path hit options.ignore, will return false, otherwise will return true.

ignore and match can not both be presented. and if neither ignore nor match presented, the new function will always return true.

License

MIT