Параметры политики ограничения скорости не применяются с помощью AspNetCoreRateLimit.C#

Место общения программистов C#
Ответить
Anonymous
 Параметры политики ограничения скорости не применяются с помощью AspNetCoreRateLimit.

Сообщение Anonymous »

Я использую AspNetCoreRateLimit версии 4.0.1 и выполнил все настройки в веб-API .net core 6. Я вижу, что ограничение скорости работает, когда я отправляю вызов через Postman.
Однако, когда я добавляю IpRateLimitPolicies с определенным IP-адресом, настройки не будут применены.Я использую Postman и на этот раз в прокси я добавил IP-адрес 127.0.0.1. Я вижу, что IP-адрес, соответствующий API, установлен правильно, когда я использую Request.HttpContext.Connection.RemoteIpAddress;
Я зарегистрировал их, как показано в program.cs:

Код: Выделить всё

    _serviceCollection.AddOptions();
_serviceCollection.AddMemoryCache();
_serviceCollection.Configure(builder.Configuration.GetSection("IpRateLimiting"));
_serviceCollection.Configure(builder.Configuration.GetSection("IpRateLimitPolicies"));
_serviceCollection.AddInMemoryRateLimiting();
_serviceCollection.AddSingleton();
_serviceCollection.AddSingleton();
_serviceCollection.AddSingleton();
_serviceCollection.AddSingleton();
Также добавлено:

Код: Выделить всё

app.UseIpRateLimiting();
Мои настройки приложения также выглядят так:

Код: Выделить всё

 {
"IpRateLimiting": {
"EnableEndpointRateLimiting": false,
"StackBlockedRequests": false,
"RealIPHeader": "X-Real-IP",
"ClientIdHeader": "X-ClientId",
"IpWhitelist": [ ],
"EndpointWhitelist": [],
"ClientWhitelist": [],
"HttpStatusCode": 429,
"GeneralRules": [
{
"Endpoint": "*",
"Period": "10s",
"Limit": 1
}
]
},
"IpRateLimitPolicies": {
"IpRules": [
{
"Ip": "127.0.0.1",
"Rules": [
{
"Endpoint": "*",
"Period": "20s",
"Limit": 2
}
]
}
]
}
Но, видимо, настройки IpRateLimitPolicies не будут применены.
Интересно, я что-нибудь пропустил?

Подробнее здесь: https://stackoverflow.com/questions/710 ... eratelimit
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»