我是playmoss的开发人员,用户可以使用不同的音乐服务创建播放列表。
我们计划以类似于bop.fm的方式向我们的播放列表添加Spotify支持。
以此播放列表为例(其中所有歌曲均可在spotify上播放,至少在西班牙)... https://bop.fm/p/o12l
...如果我们的计算机上安装了spotify客户端(使用Mac测试) 一旦播放列表开始播放,我们可以点击右上角的[spot]图标,我们将通过spotify播放歌曲。
使用bop.fm控制界面,我们可以暂停,播放,跳过下一步,甚至可以跳到带有进度条的轨道中的某个点。 这与官方spotify播放按钮类似,但功能更强大,请参见此处的示例: http://jsfiddle.net/insonorizate/a5jf39yn/
使用播放按钮有前一个,播放,暂停,下一个功能,但不是搜索。
当然它不能以任何方式定制,也不能从javascript调用。 (在bop.fm中可以打开一个debuger控制台并调用
Bop.Player.pause()
或
Bop.Player.play()
通过spotify暂停或播放bop.fm中播放的曲目。
在bop.fm页面上摆弄一些有趣的东西。 Ther是主页面中的iframe:
https://embed.spotify.com/remote-control-bridge/
查看此iframe来源,我们发现如下内容:
// Expose the OAuth Token to the Javascript
var tokenData = 'NAowChgKB1Nwb3RpZnkSABoGmAEByAEBJReQCFQSFG2Ynvz1oBKgxv2mE1XXz_1Au-cg';
// Pass the remote control to the bridge
var remoteControlBridge = new Spotify.RemoteControlBridge();
remoteControlBridge.init(tokenData);
没有Spotify.RemoteControlBridge的文档(谷歌上的“Spotify.RemoteControlBridge”的0结果)并且文档中没有任何关于控制spotify播放器的apis甚至接近以类似的方式控制Spotify播放器。
如何从浏览器控制spotify桌面应用程序?
bop.fm是否对spotify有任何特殊的安排,他们正在使用一些“秘密api”?
他们是否正在利用我找不到的某些功能?
是否可以复制它?
是否符合Spotify条款?
谢谢!
答案 0 :(得分:4)
您无法控制Spotify客户端正在发出的Spotify客户端或收听事件。想象一下每个人都可以:每个网站都可能在未经您许可的情况下播放一首歌,甚至不知道您正在听什么。为防止此Spotify,只允许经过批准的合作伙伴使用此功能。
正如您所知,远程控制桥提供了此功能。它可以与您系统上运行的Spotify Web Helper进行通信,该助手由OAuth和CSRF令牌保护。在远程控制桥中,您甚至可以看到允许的合作伙伴:
你可以contact them并要求建立伙伴关系。我确定他们不会咬人。
答案 1 :(得分:1)
这实际上是在开发人员部分的Spotify网站上进行了一些记录。 我认为bop.fm确实使用了他们的自定义Spotify Play Button小部件。这会使用您提到的iframe。
Here您可以找到有关Spotify此功能的文档。然后,您可以使用Javascript等将其修改为您自己的需求。