1.6 KiB
strong-error-handler
Error handler for use in development (debug) and production environments.
-
When run in production mode, error responses are purposely undetailed in order to prevent leaking sensitive information.
-
When in debug mode, detailed information such as stack traces are returned in the HTTP responses.
Install
$ npm install strong-error-handler
Usage
In an express-based application:
var express = require('express');
var errorHandler = require('strong-error-handler');
var app = express();
// setup your routes
app.use(errorHandler({ /* options, see below */ }));
app.listen(3000);
In LoopBack applications, add the following entry to your
server/middleware.json
file.
{
"final:after": {
"strong-error-handler": {
"params": {
}
}
}
}
Content Type
Depending on the request header's Accepts
, response will be returned in
the corresponding content-type, current supported types include:
- JSON (
json
/application/json
) - HTML (
html
/text/html
)
There are plans to support other formats such as Text and XML.
Options
debug
boolean
, defaults to false
.
When enabled, HTTP responses include all error properties, including sensitive data such as file paths, URLs and stack traces.
log
boolean
, defaults to true
.
When enabled, all errors are printed via console.error
.
Customization of the log format is intentionally not allowed. If you would like to use a different format/logger, disable this option and add your own custom error-handling middleware.
app.use(myErrorLogger());
app.use(errorHandler({ log: false }));