4×× 客户端错误
429 Too Many Requests 请求过多
用户在给定时间内发送了太多请求。旨在与速率限制方案一起使用。.
响应表示应该包含解释条件的详细信息,并且可以包含一个 Retry-After 标头,指示在发出新请求之前要等待多长时间.
示例:
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>
请注意,本规范没有定义源服务器如何识别用户,也没有定义它如何计算请求。例如,限制请求速率的源服务器可以基于每个资源、整个服务器甚至一组服务器之间的请求计数来执行此操作。同样,它可能通过其身份验证凭据或有状态的 cookie 来识别用户.
带有 429 状态代码的响应不能由缓存存储.
- Source: RFC6585 Section 4
429 代码参考
Symfony HTTP Status Constant Response::HTTP_TOO_MANY_REQUESTS