koa-error

3.2.0 • Public • Published

koa-error

Error response middleware for koa supporting:

  • text
  • json
  • html

Installation

$ npm install koa-error

Options

  • template path to template written with your template engine
  • engine template engine name passed to consolidate
  • cache cached compiled functions, default: NODE_ENV != 'development'
  • env force a NODE_ENV, default: development
  • accepts mimetypes passed to ctx.accepts, default: [ 'html', 'text', 'json' ]

Custom templates

By using the template option you can override the bland default template, with the following available local variables:

  • env
  • ctx
  • request
  • response
  • error
  • stack
  • status
  • code

Here are some examples:

Pug (formerly jade)

app.use(error({
  engine: 'pug',
  template: __dirname + '/error.pug'
}));
doctype html
html
  head
    title= 'Error - ' + status
  body
    #error
      h1 Error
      p Looks like something broke!
      if env == 'development'
        h2 Message:
        pre: code= error
        h2 Stack:
        pre: code= stack

Nunjucks

app.use(error({
  engine: 'nunjucks',
  template: __dirname + '/error.njk'
}));
<!DOCTYPE html>
<html>
  <head>
    <title>Error - {{status}}</title>
  </head>
  <body>
    <div id="error">
      <h1>Error</h1>
    <p>Looks like something broke!</p>
    {% if env == 'development' %}
      <h2>Message:</h2>
      <pre>
        <code>
{{error}}
        </code>
      </pre>
      <h2>Stack:</h2>
      <pre>
        <code>
{{stack}}
        </code>
      </pre>
    {% endif %}
    </div>
  </body>
</html>

License

MIT

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
3.2.0452latest

Version History

VersionDownloads (Last 7 Days)Published
3.2.0452
3.1.11
3.1.02
3.0.21
3.0.11
3.0.01
2.1.014
2.0.01
1.1.395
1.1.21
1.1.11
1.1.01
1.0.01

Package Sidebar

Install

npm i koa-error

Weekly Downloads

572

Version

3.2.0

License

MIT

Unpacked Size

7.29 kB

Total Files

5

Last publish

Collaborators

  • coderhaoxin
  • eduardorfs
  • jonathanong
  • jongleberry
  • mattmueller
  • tjholowaychuk