refactor: шаг 8 — server.js упрощён до 131 строки (только init + роутеры)
This commit is contained in:
@@ -1,18 +1,34 @@
|
|||||||
|
/**
|
||||||
|
* server.js — точка входа приложения.
|
||||||
|
*
|
||||||
|
* Отвечает только за:
|
||||||
|
* 1. Инициализацию Express и глобальных middleware (helmet, static, body-parser)
|
||||||
|
* 2. Инициализацию auth (initAuth) и CSRF (initCsrf)
|
||||||
|
* 3. Подключение роутеров из src/routes/ с передачей зависимостей
|
||||||
|
* 4. Старт HTTP-сервера
|
||||||
|
*
|
||||||
|
* Бизнес-логика — в src/routes/*.js
|
||||||
|
* DB-запросы — в src/queries.js
|
||||||
|
* Auth/JWT — в src/auth.js
|
||||||
|
* Валидация — в src/validators.js
|
||||||
|
* Конфиг/хелперы — в src/config.js
|
||||||
|
*/
|
||||||
|
|
||||||
|
'use strict';
|
||||||
|
|
||||||
const express = require('express');
|
const express = require('express');
|
||||||
const cookieParser = require('cookie-parser');
|
const cookieParser = require('cookie-parser');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
const helmet = require('helmet');
|
const helmet = require('helmet');
|
||||||
// rateLimit.js: mutationLimiter (POST-роуты) и exportLimiter (GET /export)
|
|
||||||
const { mutationLimiter, exportLimiter } = require('./src/middleware/rateLimit');
|
|
||||||
// csrf.js: фабрика для инициализации CSRF-защиты (double-submit cookie pattern)
|
|
||||||
const { initCsrf } = require('./src/middleware/csrf');
|
|
||||||
require('dotenv').config();
|
require('dotenv').config();
|
||||||
const { checkConnection } = require('./src/db');
|
|
||||||
|
const { checkConnection } = require('./src/db');
|
||||||
const { initAuth, requireAdmin } = require('./src/auth');
|
const { initAuth, requireAdmin } = require('./src/auth');
|
||||||
const { aggregateCIDRs } = require('./src/validators');
|
const { aggregateCIDRs } = require('./src/validators');
|
||||||
const q = require('./src/queries');
|
const q = require('./src/queries');
|
||||||
// config.js: MOCK_USERS (мок-пользователи для dev) и backUrl (хелпер редиректа)
|
|
||||||
const { MOCK_USERS, backUrl } = require('./src/config');
|
const { MOCK_USERS, backUrl } = require('./src/config');
|
||||||
|
const { mutationLimiter, exportLimiter } = require('./src/middleware/rateLimit');
|
||||||
|
const { initCsrf } = require('./src/middleware/csrf');
|
||||||
|
|
||||||
const app = express();
|
const app = express();
|
||||||
const PORT = process.env.PORT || 3000;
|
const PORT = process.env.PORT || 3000;
|
||||||
|
|||||||
Reference in New Issue
Block a user