Lyricify 中文文档 下载 App

429 错误是什么、为什么会出现

本质是什么

429 是 HTTP 状态码,含义是 "Too Many Requests"——请求过多。具体到 Lyricify 场景:Lyricify 向 Spotify 公共 Web API 发送请求的频率超过了 Spotify 给公共客户端设的阈值,Spotify 直接拒绝服务,返回一个告诉 Lyricify "等 X 秒再来" 的数字。

这不是 Lyricify 的 bug,是 Spotify 平台层面的限流机制。开发者也在 FAQ 里明确写了:"不是 Lyricify 的锅。"

哪些操作会触发 429

Lyricify 几乎所有云端操作都要消耗 API 配额:

操作API 消耗触发频率
读取当前播放进度每次请求消耗 1 次取决于你的同步频率设置
搜索曲目消耗 1 次每次低(不是高频)
歌词搜索(Lyricify 服务器失败后)间接消耗偶尔
播放控制(Premium)每次控制消耗 1 次低(按需触发)
内置播放持续消耗用内置播放时持续触发

其中同步频率是 429 最主要的来源——默认 2 秒一次,一天下来就是几万次请求。如果同时用 Lyricify 4 + Lyricify Mobile + Web Player,多个实例叠加请求更容易触发。

429 vs 超长 429

普通 429:等待秒数在几百秒以内(通常几十秒到 3 分钟),等一会儿自动恢复。常见于频繁刷新播放进度。

超长 429:等待秒数达到几千到几万秒(几小时甚至超过一天),通常由以下原因触发:

免费账号 vs Premium

其实 429 限流不区分 Free 和 Premium——配额是按 API Client(而不是按账号)来算的。但 Premium 账号可以配置自定义 API Client获得独立配额,而免费账号不能(自定义 API Client 需要 Premium)。

所以 Premium 用户可以通过配自定义 Client 避开限流;免费用户只能:

一句话总结

429 = 用公共 API 的人太多被排队了。唯一的根治方法是有 Premium 订阅 + 配一个自定义 API Client,拿到独立配额。没有 Premium 就只能减少请求、等自然恢复。