Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
NodeJS errors for cool kids
Ouch is a NodeJS implementation of PHP's Whoops library. It's not an exact port of Whoops, but implements similar functionality and uses same front end resources in some of its error handlers. It is an error handler base/framework for NodeJs. Out-of-the-box, it provides a pretty error interface that helps you debug your web projects, but at heart it's a simple yet powerful stacked error handling system.
The source is available for download from GitHub. Alternatively, you can install using Node Package Manager (npm):
npm install ouch
// With PrettyPageHandler
http.createServer(function nsjfkj(req, res){
if (req.url === '/favicon.ico') {
res.writeHead(200, {'Content-Type': 'image/x-icon'} );
res.end();
return;
}
var d = domain.create();
d.on('error', function(e){
var ouchInstance = (new Ouch).pushHandler(
new Ouch.handlers.PrettyPageHandler('orange', null, 'sublime')
);
ouchInstance.handleException(e, req, res, function (output) {
console.log('Error handled properly')
});
});
d.run(function(){
// your application code goes here
});
}).listen('1338', 'localhost');
// With custom callback
var ouchInstance = (new Ouch).pushHandler(
function(next, exception, inspector, run, request, response){
// custom handler logic
next();
});
ouchInstance.handleException(e, req, res, function (output) {
console.log('Error handled properly')
});
For more options, have a look at the example files in examples to get a feel for how things work. Also take a look at the API Documentation and the list of available handlers below.
Ouch currently ships with the following built-in handlers, available in the require("ouch").handlers
namespace:
PrettyPageHandler
- Shows a pretty error page when something goes pants-upJsonResponseHandler
- Process errors and returns information on them as a JSON string.CallbackHandler
- Wraps a callable as a handler. You do not need to use this handler explicitly, Ouch will automatically wrap any callable you pass to ouchInstance.pushHandler
.- Add more handlers.
Ouch is open-sourced software licensed under the MIT license.
FAQs
Javascript error handling for cool kids
We found that ouch 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
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.