From 1e664685435ad3b365a867b38c80fe8da5bb17fe Mon Sep 17 00:00:00 2001 From: Sainan Date: Fri, 3 May 2024 13:38:07 +0200 Subject: [PATCH] Add CORS headers This allows the server to be addressed from the browser, which is needed for web-based management interfaces. --- src/app.ts | 4 ++-- src/middleware/middleware.ts | 8 +++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/app.ts b/src/app.ts index bacdc926..9141d315 100644 --- a/src/app.ts +++ b/src/app.ts @@ -1,6 +1,6 @@ import express from "express"; -import { unknownEndpointHandler } from "@/src/middleware/middleware"; +import { unknownEndpointHandler, addCorsHeaders } from "@/src/middleware/middleware"; import { requestLogger } from "@/src/middleware/morgenMiddleware"; import { apiRouter } from "@/src/routes/api"; @@ -24,7 +24,7 @@ app.use(bodyParser.raw()); app.use(express.json()); app.use(bodyParser.text()); app.use(requestLogger); -//app.use(requestLogger); +app.use(addCorsHeaders); app.use("/api", apiRouter); //app.use("/test", testRouter); diff --git a/src/middleware/middleware.ts b/src/middleware/middleware.ts index 92a69de7..8b42e7bb 100644 --- a/src/middleware/middleware.ts +++ b/src/middleware/middleware.ts @@ -14,4 +14,10 @@ const unknownEndpointHandler = (request: Request, response: Response) => { // next(); // }; -export { unknownEndpointHandler }; +const addCorsHeaders = (_request: Request, response: Response, next: NextFunction) => { + response.header("Access-Control-Allow-Origin", "*"); + response.header("Access-Control-Allow-Headers", "Content-Type"); + next(); +}; + +export { unknownEndpointHandler, addCorsHeaders };