Web API 中没有 webhooks,我认为添加该功能还需要很长时间https://github.com/spotify/web-api/issues/538
Spotify 上的播放列表由snapshot_id. 当您发出 API 请求以获取播放列表时,返回的字段之一是snapshot_id,用于标识播放列表版本。如果您为每个播放列表存储此版本 ID,则可以远程检查自上次检查以来播放列表是否已更改(snapshot_id如果更改,则更改)
请务必记住,您所做的任何更改也会影响snapshot_id. 所以你需要:
snapshot_id的播放列表是否与当前保存的不同?snapshot_id进行更改后,从“获取播放列表”中存储我认为snapshot_id用户的库不支持 - 您可以检查用户库的子集以检测任何添加(例如,如果库中的前 50 首歌曲没有更改,则没有添加新歌曲,并且您只需要发出一个 API 请求而不是无数次),但是如果您只这样做,您将错过从库的其余部分中删除的内容。您还可以检查库中歌曲的数量,这会告诉您何时添加或删除了歌曲,除非它们添加和删除相同数量的歌曲。但这意味着他们添加了一首歌曲,检查库中的前 50 首歌曲会发现这一点。
您可以轮询当前播放和最近播放的歌曲。如果您想跟踪用户收听的每首歌曲,您可以通过至少每 30 * 50 秒(25 分钟)轮询一次最近播放来实现这一点。30 是在 Spotify 将歌曲录制为 Listen 之前听一首歌所需的秒数,50 是它将为您提供的最近播放歌曲的最大数量。
| 归档时间: |
|
| 查看次数: |
4124 次 |
| 最近记录: |