Javascript 有没有办法使用spotify WEB API检查是否安装了spotify?

Javascript 有没有办法使用spotify WEB API检查是否安装了spotify?,javascript,api,spotify,Javascript,Api,Spotify,基本上,我试图创建一个链接列表,如果安装了Spotify,则使用Spotify URI链接到Spotify,如果未安装,则仅使用纯文本链接 据我所知: spotify:track:7Yokhepyf8PO8ILT2 Z5KN1 如果在浏览器中输入并安装Spotify,它将立即启动曲目或任何您要求的内容 如果未安装Spotify,则只运行正常的浏览器请求 我在文档中查找了一些我可以挂接的东西,但我找不到任何在外部应用程序上可用的东西,只是重申一下,这个应用程序不是一个本机Spotify应用程序 我

基本上,我试图创建一个链接列表,如果安装了Spotify,则使用Spotify URI链接到Spotify,如果未安装,则仅使用纯文本链接

据我所知:

spotify:track:7Yokhepyf8PO8ILT2 Z5KN1

如果在浏览器中输入并安装Spotify,它将立即启动曲目或任何您要求的内容

如果未安装Spotify,则只运行正常的浏览器请求

我在文档中查找了一些我可以挂接的东西,但我找不到任何在外部应用程序上可用的东西,只是重申一下,这个应用程序不是一个本机Spotify应用程序

我想要的最终结果是调用一个方法来检查是否安装了Spotify以返回true,如果未安装返回false


要求仅使用HTML CSS和JavaScript。

除非您使用类似的内容编写浏览器插件,否则出于安全原因,我认为这是不可能的。

我还没有深入研究过这一点,但您可以使用spotilocal.com域(仅是对127.0.0.1的DNS引用)联系本地Spotify客户端在端口4380上

如果它允许CORS,那么您应该能够使用javascript调用此URL:

看看结果如何

这就是Facebook整合Spotify的方式,如图所示:

更新

如果您使用的是Chrome,请在此页面上打开您的开发工具,然后在控制台中粘贴并运行:

$.get('http://1234.spotilocal.com:4380/remote/status.json', function(data){console.log(data)});
响应头包含
访问控制允许源代码:
,因此您应该能够使用AJAX从页面调用该URL

更新2(24/07/13)


spotify客户端的最新版本(我的版本是0.9.1.57)不再包含
访问控制允许源代码
标题,因此上述方法不再有效。

我怀疑这是否可行。Spotify应用程序将自身注册为URL处理程序后,Spotify链接似乎可以正常工作,而您无法检测可用的URL处理程序。(见附件)。也就是说,除非Spotify安装一个浏览器插件。如果可能的话,这将是一个安全风险,所以我对此表示怀疑。