express-rate-limit: Added support for resetKey on the RateLimit object (#36951)

* express-rate-limit: Adding resetKey on Instance

* express-rate-limit Fixing string quotations
This commit is contained in:
Aideen Nasirishargh 2019-07-17 10:40:36 -07:00 committed by Andrew Branch
parent 81538f04eb
commit 0278c068f3
4 changed files with 11 additions and 2 deletions

View File

@ -7,6 +7,7 @@ const apiLimiter = new RateLimit({
skipFailedRequests: false,
skipSuccessfulRequests: true,
});
apiLimiter.resetKey('testKey');
const apiLimiterWithMaxFn = new RateLimit({
windowMs: 15 * 60 * 1000,

View File

@ -99,7 +99,10 @@ declare namespace RateLimit {
*/
windowMs?: number;
}
interface Instance extends express.RequestHandler {
resetKey(key: string): void;
}
}
declare var RateLimit: new (options: RateLimit.Options) => express.RequestHandler;
declare var RateLimit: new (options: RateLimit.Options) => RateLimit.Instance;
export = RateLimit;

View File

@ -5,6 +5,7 @@ const apiLimiter = new RateLimit({
max: 100,
delayMs: 0 // disabled
});
apiLimiter.resetKey('testKey');
const apiLimiterWithMessageObject = new RateLimit({
windowMs: 15 * 60 * 1000, // 15 minutes

View File

@ -36,7 +36,11 @@ declare namespace RateLimit {
onLimitReached?(req: express.Request, res: express.Response, optionsUsed: Options): void;
windowMs?: number;
}
interface Instance extends express.RequestHandler {
resetKey(key: string): void;
}
}
declare var RateLimit: new (options: RateLimit.Options) => express.RequestHandler;
declare var RateLimit: new (options: RateLimit.Options) => RateLimit.Instance;
export = RateLimit;