我正在为我的网站开发一个脚本,随机化我最喜欢的歌曲,我想让用户只需点击它即可收听歌曲。
目前,我正在使用本地spotify:
网址
<a href='spotify:search:track:"+ trackVal +"+artist:"+ artistVal +"'>"+ trackVal +"</a>
不幸的是,当用户未在其设备上安装Spotify时,此功能无效。有没有办法检测/预见链接是否有效(仅用于后备目的)?
答案 0 :(得分:3)
检测Spotify安装的一种方法:如果安装了spotify,Spotify将在客户端计算机上运行http服务器(1234.spotilocal.com:12345 -> 127.0.0.1:12345
),以启用javascript交互。要检测是否安装了spotify,请尝试连接到本地服务器以查看它是否存在。但是,这并不能保证spotify:
链接可以正常工作,因为它可能被用户禁用,但它比检测自定义协议处理程序容易得多。最后,您可能遇到跨域问题,我不确定本地服务器是否支持JSONP ...如果您想沿着这条漫长的道路前进,here's a good read。
为了保持简单,仍然可以获得干净的后备,请考虑使用http://open.spotify.com/track/(yourTrackNo)网址。 open.spotify.com页面将检测是否安装了spotify并提示用户安装和/或在线监听(如果不是)。要获取您的歌曲的(yourTrackNo)
,如果您还没有它(我不知道您是如何手动生成链接的?),则必须使用 {{ 3}} ,现已弃用,以支持Spotify Metadata Api