refactor(api): rate limiting sistemini basitleştir ve sadece login endpoint'inde tut
Merkezi rate limiting middleware dosyasını kaldırıp rate limiting'i sadece login endpoint'ine özel hale getirildi. Diğer API endpoint'lerindeki rate limiting kısıtlamaları (loop, timer, torrent) kaldırıldı. Login rate limiter artık auth.routes.ts dosyasında inline olarak tanımlanıyor.
This commit is contained in:
@@ -4,7 +4,6 @@ import { readDb, writeDb } from "../storage/jsondb";
|
||||
import { TimerRule } from "../types";
|
||||
import { nowIso } from "../utils/time";
|
||||
import { z } from "zod";
|
||||
import { apiLimiter } from "../middleware/rate-limiter";
|
||||
|
||||
const router = Router();
|
||||
|
||||
@@ -18,7 +17,7 @@ router.get("/rules", async (_req, res) => {
|
||||
res.json(db.timerRules ?? []);
|
||||
});
|
||||
|
||||
router.post("/rules", apiLimiter, async (req, res) => {
|
||||
router.post("/rules", async (req, res) => {
|
||||
const parsed = ruleSchema.safeParse(req.body);
|
||||
if (!parsed.success) {
|
||||
return res.status(400).json({ error: parsed.error.flatten() });
|
||||
@@ -35,7 +34,7 @@ router.post("/rules", apiLimiter, async (req, res) => {
|
||||
res.json(rule);
|
||||
});
|
||||
|
||||
router.delete("/rules/:ruleId", apiLimiter, async (req, res) => {
|
||||
router.delete("/rules/:ruleId", async (req, res) => {
|
||||
const db = await readDb();
|
||||
const next = (db.timerRules ?? []).filter((rule) => rule.id !== req.params.ruleId);
|
||||
if (next.length === (db.timerRules ?? []).length) {
|
||||
|
||||
Reference in New Issue
Block a user