12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import "./plugins/dotenv.js";
- import express from "express";
- import { logger } from "#logger";
- import DbService from "./db/db-service.js";
- const PORT = process.env.PORT || 3001;
- const app = express();
- app.use(express.json());
- // cookie-parser
- import cookieParser from "cookie-parser";
- app.use(cookieParser());
- // cors
- import cors from "cors";
- app.use(
- cors({
- credentials: true,
- origin: ["http://localhost:9000", "http://localhost:9001"],
- }),
- );
- // файлы
- import path from "path";
- const __dirname = path.resolve();
- app.use("/files", express.static(path.join(__dirname, "files")));
- // лог всех запросов
- app.use((req, res, next) => {
- logger.debug(`Запрос ${req.url}`);
- next();
- });
- // роутеры
- import authMiddleware from "./middlewares/auth-middleware.js";
- import authRouter from "./modules/user/auth/routers/auth-router.js";
- app.use("/api/auth/", authRouter);
- import EventManagerRouter from "./modules/event-manager/event-manager-router.js";
- app.use("/api/event-manager/", authMiddleware(), EventManagerRouter);
- // import sessionRouter from "./modules/user/routers/session-router.js";
- // app.use("/api/session/", sessionRouter);
- // обработчик ошибок
- import errorMiddleware from "./middlewares/error-middleware.js";
- app.use(errorMiddleware);
- //
- const start = async () => {
- try {
- // проверка схемы БД
- await DbService.checkDbShema();
- // TODO сделать проверку .env
- app.listen(PORT, () => logger.info(`Сервер запущен на порту ${PORT}`));
- } catch (e) {
- logger.fatal(e);
- }
- };
- start();
|