0.0.0-development • Published 5 years ago

@uniheart/egg-onerror v0.0.0-development

Weekly downloads
-
License
-
Repository
github
Last release
5 years ago

egg-onerror

NPM version build status Test coverage David deps Known Vulnerabilities npm download

Default error handling plugin for egg.

Install

$ npm i egg-onerror

Usage

egg-onerror is on by default in egg. But you still can configure its properties to fits your scenarios.

  • errorPageUrl: String or Function - If user request html pages in production environment and unexpected error happened, it will redirect user to errorPageUrl.
  • accepts: Function - detect user's request accpet json or html.
  • all: Function - customize error handler, if all present, negotiation will be ignored.
  • html: Function - customize html error handler.
  • text: Function - customize text error handler.
  • json: Function - customize json error handler.
  • jsonp: Function - customize jsonp error handler.
  • isProd: Function - customize logic to detect if app is running on production environment. Example
// config.default.js
// errorPageUrl support funtion
exports.onerror = {
  errorPageUrl: (err, ctx) => ctx.errorPageUrl || '/500',
};

// an accept detect function that mark all request with `x-requested-with=XMLHttpRequest` header accepts json.
function accepts(ctx) {
  if (ctx.get('x-requested-with') === 'XMLHttpRequest') return 'json';
  return 'html';
}

Questions & Suggestions

Please open an issue here.

License

MIT