Sdílet prostřednictvím


Plugin pro omezení rychlosti

Simuluje chování omezování rychlosti.

snímek obrazovky s příkazovým řádkem s dev proxy simulující omezování rychlosti v rozhraních API GitHubu

Definice instance modulu plug-in

{
  "name": "RateLimitingPlugin",
  "enabled": false,
  "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
  "configSection": "rateLimiting"
}

Příklad konfigurace

{
  "rateLimiting": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/ratelimitingplugin.schema.json",
    "costPerRequest": 2,
    "rateLimit": 120
  }
}

Vlastnosti konfigurace

Vlastnost Popis Výchozí
headerLimit Název hlavičky odpovědi, která komunikuje s limitem rychlosti RateLimit-Limit
headerRemaining Název hlavičky odpovědi, která před resetováním komunikuje se zbývajícím počtem prostředků RateLimit-Remaining
headerReset Název hlavičky odpovědi, která oznamuje zbývající čas do resetování RateLimit-Reset
headerRetryAfter Název hlavičky odpovědi, která oznamuje opakování po uplynutí období Retry-After
costPerRequest Kolik prostředků vyžaduje náklady 2
resetTimeWindowSeconds Jak dlouho v sekundách do dalšího resetování 60
warningThresholdPercent Procento použití, které se používá při překročení, začne vracet hlavičky odpovědi omezující rychlost 80
rateLimit Počet prostředků pro časové období 120
whenLimitExceeded Chování modulu plug-in by se mělo použít při překročení limitu. Použijte Throttle nebo Custom. Throttle
resetFormat Formát použitý k určení, kdy se limit rychlosti resetuje. Použijte SecondsLeft nebo UtcEpochSeconds. SecondsLeft
customResponseFile Soubor obsahující vlastní chybovou odpověď použitou při překročení limitu rate-limit-response.json

Možnosti příkazového řádku

Žádný

Další krok