Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Simule les comportements de limite de débit.
Exemple de configuration
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/rc.schema.json",
"plugins": [
{
"name": "RateLimitingPlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
"configSection": "rateLimiting"
}
],
"rateLimiting": {
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/ratelimitingplugin.schema.json",
"costPerRequest": 2,
"rateLimit": 120
}
}
Propriétés de configuration
| Propriété | Descriptif | Faire défaut |
|---|---|---|
headerLimit |
Nom de l’en-tête de réponse qui communique la limite de limitation de débit | RateLimit-Limit |
headerRemaining |
Nom de l’en-tête de réponse qui communique le nombre restant de ressources avant la réinitialisation | RateLimit-Remaining |
headerReset |
Nom de l’en-tête de réponse qui communique le temps restant jusqu’à la réinitialisation | RateLimit-Reset |
headerRetryAfter |
Nom de l’en-tête de réponse qui communique la nouvelle tentative après la période | Retry-After |
costPerRequest |
Combien de ressources coûte une demande | 2 |
resetTimeWindowSeconds |
Durée en secondes jusqu’à la réinitialisation suivante | soixante |
warningThresholdPercent |
Pourcentage d’utilisation lorsque le dépassement commence à retourner des en-têtes de réponse de limitation du taux | 80 |
rateLimit |
Nombre de ressources pour une fenêtre de temps | 120 |
whenLimitExceeded |
Comportement que le plug-in doit utiliser lorsque la limite est dépassée. Utilisez Throttle ou Custom. |
Throttle |
resetFormat |
Format utilisé pour déterminer quand la limite de débit est réinitialisée. Utilisez SecondsLeft ou UtcEpochSeconds. |
SecondsLeft |
customResponseFile |
Fichier contenant une réponse d’erreur personnalisée utilisée lorsque la limite est dépassée. | rate-limit-response.json |
Options de ligne de commande
Aucun
Remarques
Corps de la réponse personnalisée
Si vous définissez la body propriété dans le fichier de réponse personnalisé sur un objet ou un tableau JSON, le proxy de développement le sérialise au format JSON. Si vous la définissez sur une chaîne, le proxy de développement envoie la chaîne as-is, sans guillemets environnants. Étant donné que le proxy de développement définit par défaut l’en-tête Content-Typeapplication/jsonsur , définissez l’en-tête Content-Type pour qu’il corresponde à votre contenu lorsque vous retournez du contenu non JSON, par exemple text/plain.
En-tête de réponse Content-Type personnalisé
Lorsque whenLimitExceeded la valeur est définie Custom et que la réponse personnalisée a un body en-tête mais ne définit pas d’en-tête Content-Type , le proxy de développement retourne la réponse avec l’en-tête Content-Type: application/json . Pour retourner un autre type de contenu, ajoutez l’en-tête Content-Type au fichier de réponse personnalisé. Le proxy de développement utilise la valeur que vous spécifiez.