Spotify Apps API:还有更多文档吗?
Posted
技术标签:
【中文标题】Spotify Apps API:还有更多文档吗?【英文标题】:Spotify Apps API: any more documentation? 【发布时间】:2012-01-11 07:31:50 【问题描述】:我从昨天开始就一直在玩新的Spotify Apps API,但即使他们在线的文档非常好,我也找不到任何关于使用您在调用getSpotifyApi(1)
后收到的 API 对象的内容。他们在网上有某种API reference,但没有描述如何获取这些对象,如何访问图形等内置资源。总而言之,我觉得我错过了一些东西。
通过使用开发人员检查器检查 API 并查看一些可用的应用程序,我能够使用它。有没有办法查看javascript代码?
【问题讨论】:
【参考方案1】:正如其他人所说,可以浏览源代码并查看示例“API”应用程序,但这些都不再可用。出于这个原因,我整理了一个厨房水槽应用程序,它演示了如何执行大部分基本功能。它对任何入门的人都可能派上用场:
https://github.com/ptrwtts/kitchensink
在自述文件中,还有一个有用资源列表,但我将在此处复制其中一些以方便访问:
文档
Spotify 应用文档:http://developer.spotify.com/en/spotify-apps-api/overview/
构建 Spotify 应用程序:http://musicmachinery.com/2011/12/02/building-a-spotify-app/
PasteBin 示例:http://pastebin.com/u/MrSiir
应用程序
教程:http://developer.spotify.com/download/spotify-apps-api/tutorial/
情绪旋钮:https://github.com/alexmic/mood-knobs
Spartify:https://github.com/blixt/spartify
SpotifyEchoNestPlaylistDemo:https://gist.github.com/1438262
【讨论】:
【参考方案2】:目前文档非常稀少。我发现查看应用程序包中 Spotify.app 的资源很有帮助。
在 Mac 上,您可以在以下应用程序包中找到一些有趣的资源:Spotify.app/Contents/Resources/cef_views
更新:使用新版本的 spotify 预览,我的解决方案不再完全适用。您仍然可以访问 Spotify.app/Contents/Resources/apps 上的一些资源,但它们现在被压缩到每个应用程序一个文件中。但是,您仍然可以通过查看这些文件来访问某些信息。
【讨论】:
啊,谢谢,cef_views 文件夹很有趣。在那里你可以找到所有的 API 脚本、css 文件等。超级有用! 在我的 MacBook 上似乎找不到此文件夹(顺便说一下,Spotify 会在打开它时崩溃),并且 Windows 上似乎没有相应的文件夹。有什么线索吗? 在 Windows 中,该文件夹以 .zip 文件 (resources.zip) 的形式位于数据文件夹中,接下来是 Spotify.exe。就我而言,这是“C:\Users\buchetics\AppData\Roaming\Spotify\Data\resources.zip”。在 Mac 上,您需要右键单击 Spotify.app 并选择“显示包内容”(或类似的东西),然后您可以导航到包内的文件夹。 似乎所有内容都被编译成 .spa 文件类型。我发现我可以使用十六进制编辑器来浏览内容,您有没有更好的方法? 您可以使用 'tar -xvf filename.spa' 提取内容。【参考方案3】:我只是在“sp”对象上做一个console.log 来追踪它包含的所有对象。 sp 对象的名称很容易理解,因此您可以更深入地了解 Spotify API。示例:
sp = getSpotifyApi(1);
toStringObject(sp);
function toStringObject(aObject, aTab)
if(aTab == undefined || aTab == null)
aTab = '';
for(var string in aObject)
console.log(aTab + 'object: ' + string + ', value: ' + aObject[string]);
if(typeof(aObject[string]) == 'object')
toStringObject(aObject[string], aTab + '\t');
console.log('-------------------------------------');
给你输出:
...
object: addEventListener, value: function addEventListener() [native code]
object: hideSharePopup, value: function hideSharePopup() [native code]
-------------------------------------
object: trackPlayer, value: [object Object]
object: setContextCanSkipPrev, value: function setContextCanSkipPrev() [native code]
object: removeEventListener, value: function removeEventListener() [native code]
object: setVolume, value: function setVolume() [native code]
object: playTrackFromContext, value: function playTrackFromContext() [native code]
object: canChangeRepeat, value: function canChangeRepeat() [native code]
object: setShuffle, value: function setShuffle() [native code]
...
【讨论】:
【参考方案4】:查看可能的一个好方法是使用示例“api”应用程序。通过在搜索框中键入“spotify:app:api”并使用检查器查看包含的代码来做到这一点。
这里也有教程:http://developer.spotify.com/download/spotify-apps-api/tutorial/
希望这会有所帮助!如果您有任何问题,也请始终联系 mager@spotify.com。
【讨论】:
无法获得“spotify:app:api”来启动应用程序,我总是收到“找不到应用程序”错误消息。使用最新的预览版 (0.8.0.873)。 “这个新预览版中的应用目前在 Spotify 的发布国家/地区之外不可用,因此您暂时无法使用它们。”以上是关于Spotify Apps API:还有更多文档吗?的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Spotify Apps API 中获取艺术家的专辑
Spotify API - 在 Google Apps 脚本中检索有效的访问令牌