[server] Update limit (#6073)

## Description

## Tests
This commit is contained in:
Neeraj
2025-05-28 14:13:30 +05:30
committed by GitHub

View File

@@ -24,6 +24,7 @@ type RateLimitMiddleware struct {
reset time.Duration
ticker *time.Ticker
limit10ReqPerMin *limiter.Limiter
limit200ReqPerMin *limiter.Limiter
limit200ReqPerSec *limiter.Limiter
discordCtrl *discord.DiscordController
}
@@ -31,6 +32,7 @@ type RateLimitMiddleware struct {
func NewRateLimitMiddleware(discordCtrl *discord.DiscordController, limit int64, reset time.Duration) *RateLimitMiddleware {
rl := &RateLimitMiddleware{
limit10ReqPerMin: util.NewRateLimiter("10-M"),
limit200ReqPerMin: util.NewRateLimiter("200-M"),
limit200ReqPerSec: util.NewRateLimiter("200-S"),
discordCtrl: discordCtrl,
limit: limit,
@@ -131,10 +133,12 @@ func (r *RateLimitMiddleware) APIRateLimitForUserMiddleware(urlSanitizer func(_
// getLimiter, based on reqPath & reqMethod, return instance of limiter.Limiter which needs to
// be applied for a request. It returns nil if the request is not rate limited
func (r *RateLimitMiddleware) getLimiter(reqPath string, reqMethod string) *limiter.Limiter {
if reqPath == "/users/public-key" {
return r.limit200ReqPerMin
}
if reqPath == "/users/ott" ||
reqPath == "/users/verify-email" ||
reqPath == "/user/change-email" ||
reqPath == "/users/public-key" ||
reqPath == "/public-collection/verify-password" ||
reqPath == "/family/accept-invite" ||
reqPath == "/users/srp/attributes" ||