fosrl.pangolin/server/internalServer.ts

38 lines
1 KiB
TypeScript
Raw Permalink Normal View History

2024-12-07 22:07:13 -05:00
import express from "express";
import helmet from "helmet";
import cors from "cors";
import cookieParser from "cookie-parser";
2025-01-01 21:41:31 -05:00
import config from "@server/lib/config";
2024-12-07 22:07:13 -05:00
import logger from "@server/logger";
import {
errorHandlerMiddleware,
notFoundMiddleware
} from "@server/middlewares";
2024-12-07 22:07:13 -05:00
import internal from "@server/routers/internal";
const internalPort = config.getRawConfig().server.internal_port;
2024-12-07 22:07:13 -05:00
export function createInternalServer() {
const internalServer = express();
2024-12-07 22:07:13 -05:00
internalServer.use(helmet());
internalServer.use(cors());
internalServer.use(cookieParser());
internalServer.use(express.json());
2024-12-07 22:07:13 -05:00
const prefix = `/api/v1`;
internalServer.use(prefix, internal);
2024-12-07 22:07:13 -05:00
internalServer.use(notFoundMiddleware);
internalServer.use(errorHandlerMiddleware);
2024-12-07 22:07:13 -05:00
internalServer.listen(internalPort, (err?: any) => {
if (err) throw err;
logger.info(
`Internal server is running on http://localhost:${internalPort}`
);
});
2024-12-07 22:07:13 -05:00
return internalServer;
}