x-lifi-api-key
发出的请求,并按 API 密钥跨所有端点计算。这些限制有助于防止滥用并确保每个人的流畅体验。
当前速率限制
生产使用的默认速率限制如下:未认证
端点范围 | 速率限制 |
---|---|
每两小时 200 个请求 | |
其他端点 | 每两小时 200 个请求 |
已认证
端点范围 | 速率限制 |
---|---|
每分钟 200 个请求 | |
其他端点 | 每分钟 200 个请求 |
速率限制在两小时窗口内强制执行,以应对流量峰值
🔒 企业客户可能有更高的限制。请查看我们的计划页面了解更多详情。
处理速率限制
每个响应都在标头中包含您当前的速率限制。请记住,限制可能因端点而异。 在合作伙伴门户中,您会看到每分钟请求数 (RPM) 限制。为了在峰值期间给您灵活性,我们不会逐分钟强制执行。相反,我们将您的 RPM 乘以 120 并将其应用为两小时滚动窗口。 👉 示例:如果您的限制是 100 RPM,这意味着您可以在任何两小时窗口内最多发出 12,000 个请求——要么一次性发出,要么按您喜欢的方式分散。请求响应中的速率限制信息
ratelimit-reset
:速率限制将在多少秒后重置(2 小时等于 7200)
ratelimit-limit
:2 小时期间的总限制
ratelimit-remaining
:重置前还剩多少限制
以下是计算平均 RPM 的方法:
(ratelimit-limit - ratelimit-remaining) / ((7200 - ratelimit-reset) / 60)
如果您超过速率限制,您将收到 429 Too Many Requests
HTTP 响应。当这种情况发生时:
- 您将收到一个错误消息,显示速率限制何时解除(例如,5 小时)
- 请求更高的速率限制
最佳实践
为避免达到速率限制:- 缓存来自
GET /tokens
、GET /chains
和静态端点的结果 - 避免频繁轮询相同的数据
- 批处理或防抖触发 API 调用的用户输入
滥用预防
为防止滥用,LI.FI 可能会暂时阻止以下密钥:- 持续超过速率限制
- 尝试通过多个密钥或 IP 绕过限制
- 导致服务性能下降
使用 API 密钥
所有 LI.FI API 都不需要 API 密钥。API 密钥仅用于更高的速率限制
x-lifi-api-key
和 API 密钥执行。如果您使用客户端 SDK,您将在创建配置时设置 API,然后 SDK 将在每个请求中代表您发送标头。如果直接与 API 集成,您需要自己发送此标头,如下所示:
永远不要在客户端环境中暴露您的
x-lifi-api-key
,例如基于浏览器的 JavaScript 或直接的小部件集成。在客户端使用 API 密钥可能导致未经授权的使用或滥用您的密钥,因为它会在浏览器的开发者工具或网络标签中公开可见。
如果您使用 LI.FI 小部件,您不需要传递 API 密钥。小部件在前端安全运行,无需密钥。对于服务器端集成(例如 SDK 或来自后端的 API 请求),请始终保持您的密钥机密和安全。