【问题标题】:Spotify App Playlists, events not firedSpotify 应用播放列表,未触发的事件
【发布时间】:2012-04-05 15:19:32
【问题描述】:

我遵循了 Spotify Apps API 中的播放列表示例,但除了示例播放列表之外,没有触发任何回调。

working: "spotify:user:spotify:playlist:3Yrvm5lBgnhzTYTXx2l55x"
not working: "spotify:user:1123874884:playlist:7xgiawpXZUVRFI1ohNfnP2"

第一个来自示例,第二个是我的示例播放列表。我像这样加载它们:

var playlist = models.Playlist.fromURI("spotify:user:shihjiapei:playlist:6YZtFxUCxmCgp3KDWTQhXW");
console.log("before event registration");
playlist.observe(models.EVENT.LOAD, function() {
    console.log("Playlist loaded!");
    console.log(playlist);
});
playlist.observe(models.EVENT.LOAD_ERROR, function() {
    console.log("Playlist error: not public!");
    console.log(playlist);
});

第一个说:播放列表已加载! 第二个什么都没说……

我在 spotify-client 中检查了我的播放列表是否公开。那我还需要什么其他的秘密开关??

任何经验,最佳实践表示赞赏。

编辑: WTF,它就是这样工作的..

var playlist_url = 'http://open.spotify.com/user/1123874884/playlist/7xgiawpXZUVRFI1ohNfnP2';
tempPlaylist = models.Playlist.fromURI(playlist_url, function(resultPlaylist) {
    console.log("Playlist loaded!");
    console.log(resultPlaylist);
});

但为什么它与某些播放列表相反呢?啊!

【问题讨论】:

  • 好的:如果我给它 http-url 而不是 spotify-url 并立即给它一个回调,它似乎可以工作..

标签: javascript spotify playlists


【解决方案1】:

我认为这可能是因为您的第二个示例是本地播放列表,该列表在技术上已经加载(在您本地的 Spotify 客户端中)。第一个示例是您可能尚未订阅的示例,因此它不会为您存储在本地,因此需要下载。

放入 HTTP uri 而不是 Spotify 是类似的情况,必须先下载播放列表信息,因此会调用回调。

【讨论】:

    猜你喜欢
    • 2013-05-09
    • 1970-01-01
    • 1970-01-01
    • 2012-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多