refactor: /exp в отдельный модуль src/routes/exp.js

This commit is contained in:
2026-05-31 09:05:48 +03:00
parent ea4551ce13
commit b0a5875f4e
2 changed files with 26 additions and 18 deletions
+25
View File
@@ -0,0 +1,25 @@
// ВРЕМЕННЫЙ публичный endpoint GET /exp — без авторизации, все компании.
// TODO: удалить этот файл + строку в server.js когда /export станет публичным (ТЗ п. 4.7)
'use strict';
const { Router } = require('express');
const { exportLimiter } = require('../middleware/rateLimit');
const { aggregateCIDRs } = require('../validators');
const q = require('../queries');
const router = Router();
router.get('/exp', exportLimiter, async (req, res) => {
try {
const cidrs = await q.getExportCIDRs(null); // null = все компании
const aggregated = aggregateCIDRs(cidrs);
res.setHeader('Content-Type', 'text/plain; charset=utf-8');
res.setHeader('Content-Disposition', 'inline; filename="whitelist.txt"');
res.send(aggregated.join('\n') + (aggregated.length ? '\n' : ''));
} catch (e) {
console.error('/exp error:', e);
res.status(500).send('Export error');
}
});
module.exports = router;