429 请求过多
HTTP **429 请求过多
** 客户端错误响应 状态码表示客户端在给定时间内发送了太多请求。这种要求客户端减慢请求速率的机制通常称为 "速率限制"。
可以将 Retry-After
标头包含到此响应中,以指示客户端应等待多长时间才能再次发出请求。
速率限制的实现方式各不相同;限制可能是服务器范围的,也可能是针对每个资源的。通常,速率限制限制基于客户端的 IP,但如果请求经过身份验证或包含 cookie,则可以特定于用户或授权应用程序。
状态
http
429 Too Many Requests
示例
包含 Retry-After 标头的响应
以下请求由配置错误的客户端在循环中反复发送
http
GET /reports/mdn HTTP/1.1
Host: example.com
在此示例中,当客户端每分钟超过设置的请求阈值时,服务器范围的速率限制处于活动状态。将返回 429 响应,并包含 Retry-After
标头,该标头指示该客户端将在 60 分钟后再次允许发出请求
http
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>You're doing that too often! Try again later.</p>
</body>
</html>
规范
规范 |
---|
RFC 6585 # 第 4 节 |
另请参阅
- HTTP 响应状态码
Retry-After
- Python 解决方案:如何避免 HTTP 错误 429 python