From 4a499d1f2fcdb38cbe77302be822bee04613599f Mon Sep 17 00:00:00 2001 From: santoshi kumbhar Date: Sun, 7 Jun 2026 15:08:48 +0530 Subject: [PATCH] Add centralized error handling middleware --- server/index.js | 22 +++++++--------------- server/middleware/errorMiddleware.js | 9 +++++++++ 2 files changed, 16 insertions(+), 15 deletions(-) create mode 100644 server/middleware/errorMiddleware.js diff --git a/server/index.js b/server/index.js index 00ff6de..2655113 100644 --- a/server/index.js +++ b/server/index.js @@ -103,17 +103,8 @@ app.post('/api/analyze', upload.single('file'), async (req, res) => { res.json(newRecord); } catch (error) { - console.error("FINAL ERROR:", error.message); - - if (error.response) { - console.error("AI Service Error:", error.response.data); - return res.status(error.response.status).json(error.response.data); - } - - res.status(500).json({ - error: error.message, - detail: "Could not connect to AI Neural Engine" - }); + next (error); + } }); @@ -123,7 +114,7 @@ app.get('/api/history', async (req, res) => { const history = await Analysis.find().sort({ createdAt: -1 }); res.json(history); } catch (error) { - res.status(500).json({ error: 'Failed to fetch history' }); + next(error); } }); @@ -217,14 +208,15 @@ app.get('/api/report/:id', async (req, res) => { doc.end(); } catch (error) { - console.error('PDF Generation Error:', error); - res.status(500).json({ error: 'Failed to generate PDF' }); - } + next(error); + }s }); // 4.AUTH ROUTE const authRoutes = require('./routes/auth'); +const errorMiddleware = require('./middleware/errorMiddleware'); app.use('/api/auth', authRoutes); const PORT = process.env.PORT || 5000; +app.use(errorMiddleware); app.listen(PORT, () => console.log(`🚀 Gateway Server running on port ${PORT}`)); diff --git a/server/middleware/errorMiddleware.js b/server/middleware/errorMiddleware.js new file mode 100644 index 0000000..1bd55e3 --- /dev/null +++ b/server/middleware/errorMiddleware.js @@ -0,0 +1,9 @@ +const errorMiddleware = (err, req, res, next) => { + res.status(err.statusCode || 500).json({ + success: false, + message: err.message || "Internal Server Error", + code: err.statusCode || 500, + }); +}; + +module.exports = errorMiddleware; \ No newline at end of file