跳到主要内容

速率限制与缓存

可发送的请求数量、告知用量的响应头以及应缓存的内容。

每分钟 120 个请求

每个地址每分钟可向公开 API 发送 120 个请求。计数在每个整分钟开始时重新计算;距那时还剩多少秒,请看 RateLimit-Reset。

告知当前用量的响应头

每个响应都带有 RateLimit-Limit,表示该窗口允许的请求数;RateLimit-Remaining,表示剩余的请求数;以及 RateLimit-Reset,表示距离窗口重新开始的秒数。

HTTP
RateLimit-Limit: 120
RateLimit-Remaining: 116
RateLimit-Reset: 20

超出限制时

超出限制的请求会返回 429 rate_limited,并带有以秒为单位的 Retry-After 响应头。请等待这段时间后再发送下一个请求;在此期间发送更多请求并不会缩短等待时间。

HTTP
HTTP/1.1 429 Too Many Requests
Retry-After: 37

{
  "statusCode": 429,
  "code": "rate_limited",
  "message": "Too many requests. Wait and try again."
}

保存副本

作品库数据每天最多变化几次。请保存你用到的响应,并定期刷新,而不是为每位访客重新请求。部分响应带有 Cache-Control 响应头,说明其保持最新的时长。