summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api/RateLimiterService.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/backend/src/server/api/RateLimiterService.ts')
-rw-r--r--packages/backend/src/server/api/RateLimiterService.ts20
1 files changed, 10 insertions, 10 deletions
diff --git a/packages/backend/src/server/api/RateLimiterService.ts b/packages/backend/src/server/api/RateLimiterService.ts
index fe2db1d66a..f6ffbfab50 100644
--- a/packages/backend/src/server/api/RateLimiterService.ts
+++ b/packages/backend/src/server/api/RateLimiterService.ts
@@ -38,14 +38,14 @@ export class RateLimiterService {
max: 1,
db: this.redisClient,
});
-
+
minIntervalLimiter.get((err, info) => {
if (err) {
return reject('ERR');
}
-
+
this.logger.debug(`${actor} ${limitation.key} min remaining: ${info.remaining}`);
-
+
if (info.remaining === 0) {
reject('BRIEF_REQUEST_INTERVAL');
} else {
@@ -57,7 +57,7 @@ export class RateLimiterService {
}
});
};
-
+
// Long term limit
const max = (): void => {
const limiter = new Limiter({
@@ -66,14 +66,14 @@ export class RateLimiterService {
max: limitation.max! / factor,
db: this.redisClient,
});
-
+
limiter.get((err, info) => {
if (err) {
return reject('ERR');
}
-
+
this.logger.debug(`${actor} ${limitation.key} max remaining: ${info.remaining}`);
-
+
if (info.remaining === 0) {
reject('RATE_LIMIT_EXCEEDED');
} else {
@@ -81,13 +81,13 @@ export class RateLimiterService {
}
});
};
-
+
const hasShortTermLimit = typeof limitation.minInterval === 'number';
-
+
const hasLongTermLimit =
typeof limitation.duration === 'number' &&
typeof limitation.max === 'number';
-
+
if (hasShortTermLimit) {
min();
} else if (hasLongTermLimit) {