速率限制
速率限制用于保护 API 并确保所有用户的公平使用。
处理速率限制
当您超出速率限制时,API 会返回 429 状态码和 rate_limit_error:
{
"error": {
"code": 429,
"message": "Rate limit exceeded",
"type": "rate_limit_error",
"fallback_suggestion": "retry after 60 seconds"
}
}
推荐的重试策略
收到 429 响应时,建议实现指数退避重试:
import time
import requests
def make_request_with_retry(url, headers, payload, max_retries=3):
for attempt in range(max_retries):
response = requests.post(url, headers=headers, json=payload)
if response.status_code == 429:
wait_time = 2 ** attempt * 30 # 30s, 60s, 120s
print(f"Rate limited. Retrying in {wait_time}s...")
time.sleep(wait_time)
continue
return response
raise Exception("Max retries exceeded")
最佳实践
- 对
429响应实现指数退避重试 - 使用
callback_url(webhooks)代替频繁轮询,以减少请求量 - 分散发送生成请求,避免集中突发
- 通过 EvoLink 控制台 监控您的积分使用情况
需要更高的限额?
联系我们的销售团队,获取自定义速率限制和专属基础设施。