diff --git a/backend/src/index.js b/backend/src/index.js index 899ec36..8af2980 100644 --- a/backend/src/index.js +++ b/backend/src/index.js @@ -47,19 +47,18 @@ app.use(express.static(path.join(__dirname, "public"), { app.use("/api/docs", swaggerUi.serve, swaggerUi.setup(specs)); app.use("/api", apiRouter); -app.use((req, res) => { - res.status(404).send("Not Found"); -}) +app.use((_req, res, next) => { + if (res.error == null) { + return res.status(404).send("Not Found"); + } else { + const err = res.error; + if (err instanceof ApiError) { + return res.status(err.status).json({ status: "error", error: err.message }); + } -// has to be last -app.use((_req, res, _next) => { - const err = res.error; - if (err instanceof ApiError) { - return res.status(err.status).json({ status: "error", error: err.message }); + console.error(err); + res.status(500).json({ status: "error", error: "Internal server error" }); } - - console.error(err); - res.status(500).json({ status: "error", error: "Internal server error" }); }) const server = https.createServer({