-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Jim-Y
veterán
Köszi,
Hát ezt egy kicsit későn láttam meg, közben előálltam egy béta verzióval saját kútfőből, de le fogom cserélni az általad linkelt elegánsabb megoldásra.
Azért, mert tudom, hogy így illik, a megoldás:
const { AuthError, LoginError } = require('blabla');
const THRESHOLD_OF_TRIES = 3; // 3 tries until drop
const DEFAULT_TIMEOUT = 300000; // 5mins in milliseconds
const cache = {};
module.exports = function * rateLimiter(next) {
const user = this.request.body.email;
if (cache[user] != null && cache[user].tries >= THRESHOLD_OF_TRIES && Date.now() < cache[user].dropUntil) {
this.throw(423); // Locked for 5 mins
}
else if (cache[user] != null && cache[user].tries >= THRESHOLD_OF_TRIES && Date.now() > cache[user].dropUntil) {
delete cache[user];
}
try {
yield next;
}
catch (err) {
if (err instanceof AuthError || err instanceof LoginError) {
if (!cache[user]) {
cache[user] = {
tries: 1,
dropUntil: null
};
}
else {
cache[user].tries++;
if (cache[user].tries >= THRESHOLD_OF_TRIES) {
cache[user].dropUntil = Date.now() + DEFAULT_TIMEOUT;
}
}
this.throw(err);
}
console.error(err);
}
};
Új hozzászólás Aktív témák
- Asus ROG Strix - i7 10870H, RTX 2060, 16gb RAM
- Unihertz Titan 2, QWERTY billentyűzet, Android 15 - ÚJ!
- L14 Gen4 14" FHD IPS i5-1335U 16GB 256GB NVMe ujjolv IR kam gar
- MSI Katana 15 HX - 15.6" QHD 165Hz - i7 14650HX - 16GB - 1TB - RTX 5060 - Win11 - 3 év gari - MAGYAR
- Acer Aspire A315-59 15.6" FHD i5-1235U 16GB 512GB NVMe magyar bill gar
- Okosóra felvásárlás!! Samsung Galaxy Watch 5 Pro, Samsung Galaxy Watch 6 Classic
- BESZÁMÍTÁS! AMD Ryzen 7 5800X3D 8 mag 16 szál processzor garanciával hibátlan működéssel
- Bomba ár! HP Revolve 810 G2 - i5-G4 I 8GB I 180GB SSD I 11,6" HD Touch I Cam I W10 I Garancia
- Samsung Galaxy S21 Ultra / 12/256GB / Kártyafüggetlen / 12Hó Garancia
- HIBÁTLAN iPhone 13 Pro 128GB Alpine Green -1 ÉV GARANCIA - Kártyafüggetlen, MS2978
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest

