什么是429状态码?
用户在给定的时间内发送了太多的请求(“速率限制”)。
响应表示应该包括解释条件的细节,并且可以包括一个Retry-After报头,指示在发出新请求之前需要等待多长时间。
例如:
HTTP/1.1 429 Too Many Requests Content-Type: text/html Retry-After: 3600 Too Many Requests
Too Many Requests
我只允许每个登录用户每小时50个请求到这个网站。请稍后再试。
注意,该规范没有定义源服务器如何识别用户,也没有定义它如何计算请求。例如,限制请求速率的源服务器可以基于每个资源、整个服务器甚至一组服务器之间的请求计数来限制请求速率。同样,它可以通过其身份验证凭据或有状态cookie来识别用户。
带有429状态码的响应绝对不能存储在缓存中。
- 来源:RFC6585
429个代码引用
Symfony HTTP状态常量响应:HTTP_TOO_MANY_REQUESTS