Aller au contenu principal

4. 429 Trop de requêtes (Too Many Requests)

Le code d'état 429 indique que l'utilisateur a envoyé trop de requêtes dans un laps de temps donné ("limitation de débit").

Les représentations de réponse devraient (SHOULD) inclure des détails expliquant la condition et peuvent (MAY) inclure un en-tête Retry-After indiquant combien de temps attendre avant de faire une nouvelle requête.

Par exemple:

HTTP/1.1 429 Too Many Requests
Content-Type: text/html
Retry-After: 3600

<html>
<head>
<title>Too Many Requests</title>
</head>
<body>
<h1>Too Many Requests</h1>
<p>I only allow 50 requests per hour to this Web site per
logged in user. Try again soon.</p>
</body>
</html>

Notez que cette spécification ne définit pas comment le serveur d'origine identifie l'utilisateur, ni comment il compte les requêtes. Par exemple, un serveur d'origine qui limite les taux de requêtes peut le faire sur la base du nombre de requêtes par ressource, sur l'ensemble du serveur, ou même parmi un ensemble de serveurs. De même, il peut identifier l'utilisateur par ses identifiants d'authentification ou par un cookie avec état.

Les réponses avec le code d'état 429 ne doivent pas (MUST NOT) être stockées par un cache.