Middle
Mis on kiiruse piiramine ja kuidas seda rakendada?
sobes.tech AI
Vastus AI-lt
Kiiruse piiramine on mehhanism, mis piirab klienti serverile saadetavate päringute arvu kindla ajavahemiku jooksul. See aitab kaitsta serverit ülekoormuse ja kuritarvitamise eest.
Rakendamine võib toimuda serveri või kliendi poolel. Frontendis kasutatakse sageli lihtsat kaitset, näiteks korduvate klikkide blokeerimist või API kutsumise sageduse piirangut.
Lihtne JavaScripti näide kasutades ajastit:
let lastRequestTime = 0;
const RATE_LIMIT_INTERVAL = 1000; // 1 sekund
function sendRequest() {
const now = Date.now();
if (now - lastRequestTime < RATE_LIMIT_INTERVAL) {
console.log('Liiga sageli! Palun oodake veidi.');
return;
}
lastRequestTime = now;
fetch('/api/data')
.then(response => response.json())
.then(data => console.log(data));
}
Raskematel juhtudel kasutatakse teeke või rakendatakse rate limitingut serveris Redis, tokenite või loendurite abil.