From 1784697d153df62784f2134f4a5abf4a152024b9 Mon Sep 17 00:00:00 2001 From: shreyvishal <shreya.vishal@eminds.ai> Date: Wed, 20 Dec 2023 10:05:25 +0530 Subject: [PATCH] Enabled: Cors --- package.json | 2 ++ src/App.ts | 77 +++++++++++++++++++++++++++++++++------------------- 2 files changed, 51 insertions(+), 28 deletions(-) diff --git a/package.json b/package.json index 809a900..49ceecf 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ "dependencies": { "app-root-path": "^3.1.0", "axios": "^1.6.2", + "cors": "^2.8.5", "dotenv": "^16.3.1", "express": "^4.18.2", "ini": "^4.1.1", @@ -28,6 +29,7 @@ "winston-express": "^0.1.1" }, "devDependencies": { + "@types/cors": "^2.8.17", "@types/express": "^4.17.21", "@types/ini": "^1.3.33", "@types/uuid": "^9.0.7", diff --git a/src/App.ts b/src/App.ts index b594afa..eca0f53 100644 --- a/src/App.ts +++ b/src/App.ts @@ -1,31 +1,52 @@ -import express, { Application } from 'express'; -import { container, server } from './inversify/inversify.config'; -import './gcl/gcl.controller'; -import { ConfigService } from './config/config.service'; -import { AppLogger } from './app/app.logger'; -import { ErrorHandlerMiddleware } from './middleware/errorhandler.middleware'; - +import express, { Application, NextFunction } from "express"; +import { container, server } from "./inversify/inversify.config"; +import "./gcl/gcl.controller"; +import { ConfigService } from "./config/config.service"; +import { AppLogger } from "./app/app.logger"; +import { ErrorHandlerMiddleware } from "./middleware/errorhandler.middleware"; +import cors from "cors"; class App { - public app: Application; - - constructor() { - this.app = express(); - this.config(); - this.setupMiddlewares(); - } - - private config(): void { - server.setConfig((app) => { - app.use(express.json()); - app.use(express.urlencoded({ extended: true })) - }); - this.app.use(server.build()); - } - - private setupMiddlewares() { - const errorHandlerMiddleware = container.get<ErrorHandlerMiddleware>(ErrorHandlerMiddleware); - this.app.use(errorHandlerMiddleware.handleError.bind(errorHandlerMiddleware)); - } + public app: Application; + + constructor() { + this.app = express(); + this.config(); + this.setupMiddlewares(); + } + + private config(): void { + server.setConfig((app) => { + app.use(express.json()); + app.use(express.urlencoded({ extended: true })); + app.options( + "*", + cors({ + origin: "*", + optionsSuccessStatus: 200, + credentials: true, + methods: ["GET", "PUT", "POST", "PATCH", "DELETE", "OPTIONS"] + }) + ); + + app.use( + cors({ + origin: "*", + methods: ["GET", "PUT", "POST", "PATCH", "DELETE", "OPTIONS"] + }) + ); + }); + + this.app.use(server.build()); + } + + private setupMiddlewares() { + const errorHandlerMiddleware = container.get<ErrorHandlerMiddleware>( + ErrorHandlerMiddleware + ); + this.app.use( + errorHandlerMiddleware.handleError.bind(errorHandlerMiddleware) + ); + } } const configService = container.resolve<ConfigService>(ConfigService); @@ -35,5 +56,5 @@ const app = new App().app; const port = configService.getAppPort(); app.listen(port, () => { - logger.info(`Server is running on http://localhost:${port}`); + logger.info(`Server is running on http://localhost:${port}`); }); -- GitLab