feat(Validators): add server ID validation function to prevent path traversal and unsafe characters; update routes to utilize new validation logic
Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 1m55s

This commit is contained in:
2026-02-22 23:28:19 +07:00
parent c3fba50de8
commit 353d14d64e
6 changed files with 54 additions and 17 deletions
+3 -3
View File
@@ -106,7 +106,7 @@ async function runNetworkMapSchedulerNow(req, res) {
} catch (_) {}
});
return sendOk(res, { message: 'Запуск выполняется в фоне' });
return res.json({ ok: true, message: 'Запуск выполняется в фоне' });
} catch (e) {
console.error('[scheduler] run-now', e);
const msg = e?.message || String(e);
@@ -177,7 +177,7 @@ async function runPingServicesSchedulerNow(req, res) {
refreshPingServicesCache().catch((err) => {
console.error('[scheduler] ping-services run-now failed', err);
});
return sendOk(res, { message: 'Обновление кеша пинг-сервисов запущено в фоне' });
return res.json({ ok: true, message: 'Обновление кеша пинг-сервисов запущено в фоне' });
} catch (e) {
console.error('[scheduler] ping-services run-now', e);
return sendError(res, 500, 'Не удалось запустить', 'E_SCHEDULER');
@@ -237,7 +237,7 @@ async function runUptimeMonitorSchedulerNow(req, res) {
body: JSON.stringify({ serverId }),
}).catch((err) => console.warn('[scheduler] uptime check', serverId, err?.message));
}
return sendOk(res, { message: 'Проверки Uptime Monitor запущены в фоне' });
return res.json({ ok: true, message: 'Проверки Uptime Monitor запущены в фоне' });
} catch (e) {
console.error('[scheduler] uptime-monitor run-now', e);
return sendError(res, 500, 'Не удалось запустить', 'E_SCHEDULER');