Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
handler: handler(async (req: IncomingMessage): Promise => {
const youch = new Youch(err, req);
const json = await youch.toJSON();
console.log(forTerminal(json)); // eslint-disable-line
return youch.toHTML();
}),
path: '*',
const youchPlugin = (fun: any): any => async (req: IM, res: SR): Promise => {
try {
return await fun(req, res);
} catch (err) {
const youch = new Youch(err, req);
const json = await youch.toJSON();
console.log(forTerminal(json)); // eslint-disable-line
return youch.toHTML();
}
};
this.server.use(async (err, req, res, next) => {
if (process.env.NODE_ENV === 'development') {
const errors = await new Youch(err, req).toJSON(); // toHTML();
return res.status(500).json(errors);
}
return res.status(500).json({ error: 'Internal server error' });
});
}
this.server.use(async (err, req, res, next) => {
if (process.env.NODE_ENV === 'development') {
const errors = await new Youch(err, req).toJSON();
// you have an alternativo toHTML also
// we prefer toJSON because in this case we are working over an API
return res.status(500).json(errors);
}
return res.status(500).json({ error: 'Internal server error' });
});
}
async renderError(error, req) {
if (process.env.NODE_ENV !== 'production') {
const youch = new Youch(error, req);
return youch.toHTML();
} else {
const { readFile } = require('fs-extra');
return readFile(this.options.path, 'utf-8');
}
},
};
this.server.use(async (err, req, res, next) => {
if (process.env.NODE_ENV === 'development') {
const errors = await new Youch(err, req).toJSON();
return res.status(500).json(errors);
}
return res.status(500).json({ error: 'Internal server error' });
});
}