如何使用 Spotify Apps API 对象?

Posted

技术标签:

【中文标题】如何使用 Spotify Apps API 对象?【英文标题】:How to use the Spotify Apps API objects? 【发布时间】:2012-01-13 15:51:16 【问题描述】:

新的Spotify Apps javascript API 包含许多对象,如专辑、图书馆、链接等。但是您如何在您的应用程序中实际实例化和使用它们中的任何一个? 我查看了教程应用程序,但那里使用的只是 trackPlayer 对象,据我所知没有记录。 this 问题的答案建议在 Spotify.app/Contents/Resources/cef_views 的应用程序包中查看。但是,我似乎在我的 Mac 上找不到这个,而且在 Windows 上似乎没有相应的文件夹。

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

首先,回答您关于在哪里可以找到文件夹的第二个问题(我也在我自己的原始帖子中将此作为评论发布):


在 Windows 中,该文件夹以 .zip 文件 (resources.zip) 的形式位于数据文件夹中,接下来是 Spotify.exe。就我而言,这是

C:\Users\buchetics\AppData\Roaming\Spotify\Data\resources.zip

在 Mac 上,您需要右键单击 Spotify.app 并选择 Show Package Content(或类似名称),然后您可以导航到捆绑包中的文件夹。


好的,现在回答你原来的问题。您可以像这样获取 API 对象:

window.Models = sp.require("sp://import/scripts/api/models");
window.Views = sp.require("sp://import/scripts/api/views");

然后,您可以使用API reference 中描述的所有方法和属性(仍然不是很好)。 例如:

window.CurrentPlaylist = new Models.Playlist();
var track = Models.Track.fromURI("spotify:track:4n6AGL10M8fbm8oHxhK16j");
CurrentPlaylist.add(track);

等等。 Models API 非常易于使用,Views 对象可用于呈现类似于常规 Spotify 列表的曲目列表。其他API调用,如获取当前播放曲目,需要使用var sp = getSpotifyApi(1);返回的核心API。但是,目前还没有这方面的文档,最好的建议是查看cef_views 中的代码或使用可用应用程序上的检查器来查找有用的代码片段(并非所有应用程序都以某种方式公开其代码很容易看,但有些确实如此,例如“We are Hunted”或“Songkicks”应用)。

【讨论】:

太棒了! (昨天确实尝试了 sp://import... 但错过了 api-part :))。干杯 似乎检查第 3 方和内置应用程序不再起作用(预览版本 0.8.0.873)

以上是关于如何使用 Spotify Apps API 对象?的主要内容,如果未能解决你的问题,请参考以下文章

Apps API 中的 Spotify playlists.tracks 对象中缺少用户字段

使用 Spotify Apps API 的空或未定义的艺术家图像

通过 Spotify Apps API 创建播放列表文件夹

使用 Spotify Apps API 从给定播放列表中的特定曲目开始

无法在 Spotify Apps API 中获取艺术家的专辑

通过 Google Apps 脚本进行 Spotify API 授权