Security News
PyPI’s New Archival Feature Closes a Major Security Gap
PyPI now allows maintainers to archive projects, improving security and helping users make informed decisions about their dependencies.
var koa = require('koa');
var route = require('koa-route')
var KError = require('KError');
var app = koa();
app.use(KError.handler());
app.use(route.get('/ok', function *() {
this.body = { success : true };
}));
app.use(route.get('/400', function *() {
throw KError();
}));
app.use(route.get('/401', function *() {
throw KError.notAuth();
}));
app.listen(3000);
Take a look at the Example Server
To Run:
$ npm install
$ npm start
http://localhost:3000
Catches and normalizes errors that bubble up from the yielded middleware. all errors follow the same format.
{
error : String,
status : Number,
details : Mixed
}
Unrecognized errors are printed to the console and a 500 is sent of the following format.
{
error : 'Internal Server Error',
status : 500,
details : null
}
To catch errors, simply add to koa's middleware.
var koa = require('koa');
var KError = require('KError');
var app = koa();
app.use(KError.handler());
// all routes return
// {
// error : 'Not Found',
// status : 404,
// details : null
// }
KError([seed], [status], [details])
An error can be generated using multiple error parameters.
throw KError('My error is bad and I feel bad', 400, ['one bad thing', 'another bad thing']);
An error can also be generated using a single object parameter.
throw KError({
error : 'My error is bad and I feel bad',
status : 400,
details : ['one bad thing', 'another bad thing']
});
Any of the parameters can be omitted in either case, and will default to the following unless overridden.
{
error : 'Generic Error',
status : 400,
details : null
}
KError.notFound([errorOverride] [details])
Alias for
throw KError({
error : errorOverride || 'Not Found',
status : 404,
details : details || null
});
KError.notAuth([errorOverride] [details])
Alias for
throw KError({
error : errorOverride || 'Not Authorized',
status : 401,
details : details || null
});
FAQs
A simple error handler and generator for the koa framework
We found that kerror demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PyPI now allows maintainers to archive projects, improving security and helping users make informed decisions about their dependencies.
Research
Security News
Malicious npm package postcss-optimizer delivers BeaverTail malware, targeting developer systems; similarities to past campaigns suggest a North Korean connection.
Security News
CISA's KEV data is now on GitHub, offering easier access, API integration, commit history tracking, and automated updates for security teams and researchers.