Hirdetés
- One mobilszolgáltatások
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Redmi Note 15 Pro+ - több plusz, mint mínusz
- A hagyományos (nem okos-) telefonok jelene és jövője
- Samsung Galaxy A52s 5G - jó S-tehetség
- Macrodroid
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Milyen okostelefont vegyek?
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
-
Mobilarena
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
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Kínai és egyéb olcsó órák topikja
- LEGO klub
- Megkérdeztük az AI-t: milyen érzés, amikor megreguláznak?
- AMD FX
- Vigneau interaktív lokálblogja
- Melyik tápegységet vegyem?
- One mobilszolgáltatások
- Formula-1
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- További aktív témák...
- Sony AG9 Master Series OLED (55") GARANCIÁLIS 2026.06.15-ig! Panel futási idő igazolt 2460 óra!
- Akciós áron eladó HP Dragonfly G3 /I7-1265U/32 GB/512B SSD/13,5"/FHD+/400nit/Touch
- Samsung Galaxy Book 3 360 i5 13.gen, 16GB RAM, 512GB SSD, érintőkijelzős kedvező áron!
- Samsung Galaxy Book PRO 2 /i7-1260P/16GB/512SSD/AMOLED/13.3/Intel Iris Xe/Gari
- Honor Magic 8 Pro, fekete, Global 7100mAh
- BESZÁMÍTÁS! ASUS H510M i5 11400F 16GB DDR4 512GB SSD RX 6700 10GB Zalman T4 Plus Chieftec 650W
- Legjobb kijelzős!!! HP ZBook Power 15 G8 i7-11850H 32GB 512GB Nvidia RTX A2000 1 év garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Bomba ár! Lenovo ThinkPad X270 - i5-7G I 8GB I 256SSD I 12,5" FHD I HDMI I Cam I W11 I Garancia!
- 176 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5080 (ELKELT)
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


