fix: guard the async /check-now handler against crashing (finding 8)
Express 4 geeft een afgewezen promise uit een async handler niet door aan de error-handling; met Node 22 crashte daardoor het hele proces. De handler vangt de fout nu zelf af, logt hem en antwoordt met een 500. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013gwc3aCiyQxmCWQke8RvEz
This commit is contained in:
+10
-3
@@ -31,10 +31,17 @@ function createApp(deps) {
|
||||
res.redirect('/');
|
||||
});
|
||||
|
||||
// Express 4 vangt een afgewezen promise uit een async handler niet af, en
|
||||
// Node 22 laat het proces daarop crashen — dus zelf afvangen.
|
||||
app.post('/check-now', async (req, res) => {
|
||||
const products = listProducts();
|
||||
await checkAllProducts(products);
|
||||
res.redirect('/?checked=1');
|
||||
try {
|
||||
const products = listProducts();
|
||||
await checkAllProducts(products);
|
||||
res.redirect('/?checked=1');
|
||||
} catch (err) {
|
||||
console.error(`[check-now] mislukt: ${err && err.message}`);
|
||||
res.status(500).send('Er ging iets mis bij het controleren van de prijzen.');
|
||||
}
|
||||
});
|
||||
|
||||
return app;
|
||||
|
||||
Reference in New Issue
Block a user