@canmertinyo/rate-limit-express
Version:
A simple rate-limiting middleware for Express.js with support for in-memory, Redis, and MongoDB storage
16 lines (12 loc) • 488 B
text/typescript
import mongoose, { Schema } from "mongoose";
import { RateLimitRecord } from "../../interfaces";
export const RATE_LIMIT_SCHEMA_CONST = "RateLimit";
export const RateLimitSchema = new Schema<RateLimitRecord>({
key: { type: String, required: true, unique: true },
count: { type: Number, required: true },
timestamp: { type: Number, required: true },
});
export const RateLimitModel = mongoose.model<RateLimitRecord>(
RATE_LIMIT_SCHEMA_CONST,
RateLimitSchema
);