AspNetCoreRateLimit icon indicating copy to clipboard operation
AspNetCoreRateLimit copied to clipboard

[Bug] ClientRateLimitMiddleware.ReturnQuotaExceededResponse ignores PeriodTimespan in message.

Open Overrided opened this issue 4 years ago • 1 comments

Hi all!)

So I've bumped into an issue, when I'm trying to set-up rate limiting, using Period in RateLimitRule, like this:

services.Configure<ClientRateLimitOptions>(clientRateLimitOptions =>
      clientRateLimitOptions.GeneralRules = new List<RateLimitRule>
      {
          new RateLimitRule
          {
              Endpoint = "*",
              Period = "20m",
              Limit = 2
          }
      });

ReturnQuotaExceededResponse message is being formatted like expected: "API calls quota exceeded! maximum admitted 2 per 20m."

But if I use PeriodTimespan in RateLimitRule instead, like this:

services.Configure<ClientRateLimitOptions>(clientRateLimitOptions =>
      clientRateLimitOptions.GeneralRules = new List<RateLimitRule>
      {
          new RateLimitRule
          {
              Endpoint = "*",
              PeriodTimespan = TimeSpan.FromMinutes(20),
              Limit = 2
          }
      });

ReturnQuotaExceededResponse message missing time period I've set up: "API calls quota exceeded! maximum admitted 2 per ."

I'm using 4.0.1 version of AspNetCoreRateLimit package on .net 5.0.

Overrided avatar Jul 30 '21 09:07 Overrided

@stefanprodan any updates on this?

Overrided avatar Oct 13 '21 14:10 Overrided