从昨天开始,我一直在使用新的Spotify Apps API,但即使他们在线提供的文档非常好,我也找不到任何关于使用调用后收到的 API 对象的内容getSpotifyApi(1)
。他们在网上有某种API 参考,但没有描述如何获取这些对象,如何访问图形等内置资源。总而言之,我觉得我错过了一些东西。通过使用开发人员检查器检查 API 并查看一些可用的应用程序,我能够使用它。有什么方法可以查看 Javascript 代码吗?
4 回答
正如其他人所说,可以浏览源代码并查看示例“API”应用程序,但这些都不再可用。出于这个原因,我整理了一个厨房水槽应用程序,它演示了如何执行大部分基本功能。对于任何入门的人来说,它可能会派上用场:
https://github.com/ptrwtts/kitchensink
在 README 中,还有一个有用资源的列表,但我将在此处复制其中一些以方便访问:
文档
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
目前文档非常稀少。我发现查看应用程序包中 Spotify.app 的资源很有帮助。
在 Mac 上,您可以在以下应用程序包中找到一些有趣的资源:Spotify.app/Contents/Resources/cef_views
更新:使用新版本的 spotify 预览,我的解决方案不再完全适用。您仍然可以访问 Spotify.app/Contents/Resources/apps 上的一些资源,但它们现在被压缩到每个应用程序一个文件中。但是,您仍然可以通过查看这些文件来访问某些信息。
我只是在“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] }
...
了解可能发生的事情的一个好方法是使用示例“api”应用程序。通过在搜索框中键入“spotify:app:api”并使用检查器查看包含的代码来做到这一点。
这里还有一个教程:http: //developer.spotify.com/download/spotify-apps-api/tutorial/
希望这可以帮助!如果您有任何问题,请务必联系 mager@spotify.com。