基本上我想在网站上显示当前曲目。
我已经搜索了很多,以便在玩家状态(播放/暂停,曲目,当前位置)发生变化时获得通知。
我的问题: 是否有可能获得通知(套接字,挂钩调用),或者我是否有必要像每秒一样调用Web API并获取状态?
我担心当多个用户连接其帐户并显示当前曲目时,我会遇到速率限制。
答案 0 :(得分:0)
不,仍然没有办法做到这一点。为了实现您的愿望,您需要不断地汇集 Spotify API。
然而,您可以使用 Spotify SDK,您可以传递一个在播放状态更改时执行的函数。 SDK 与一些平台 (see supported browsers) 不兼容,但对于那些平台,您可以捕获 SDK 初始化错误,然后通过 API 切换到连续轮询。那样你的请求就会少很多。
第二个选项是仅在最后一首歌曲应该结束后才更新当前播放的歌曲。在获取当前播放歌曲的播放状态时,可以使用字段duration_ms
和progress_ms
来计算歌曲的剩余时间。然后安排另一个 API 请求,当歌曲应该结束并且你很好的时候。对于您的用例而言,这是否是一个好的策略取决于播放类型以及播放在您的应用中更改的频率。
希望能帮到你!