Spotify Apps API:图书馆类不会返回用户播放列表
Posted
技术标签:
【中文标题】Spotify Apps API:图书馆类不会返回用户播放列表【英文标题】:Spotify Apps API: Library-class won't return users Playlists 【发布时间】:2012-01-27 11:55:06 【问题描述】:我正在尝试获取包含用户库 (http://developer.spotify.com/download/spotify-apps-api/reference/dcdebc652c.html) 中所有播放列表的数组。
其他类属性(专辑、艺术家、starredPlaylist、曲目)没有问题,但不知何故“播放列表”属性无法使用
var allPlaylists = models.library.playlists;
而
var allArtists= models.library.artists;
工作得很好!(都使用 document.write(var))
有什么建议吗?谢谢!
【问题讨论】:
“行不通”是什么意思?它是在您的控制台中引发错误还是空数组或 null 或什么? 抱歉,document.write 返回“未定义” 【参考方案1】:这是官方的回答:
很遗憾,出于隐私原因,在 Spotify Apps API 中获取用户播放列表的功能已被删除。这是在最后一刻完成的,文档没有及时更新。我们将很快发布反映这一变化的新版本的客户端和文档。
【讨论】:
这里有什么更新:通过 api 返回用户的播放列表?好久不见!【参考方案2】:我看起来 sp.core.library.getPlaylists 在 . 0.8.0–701-gc2d793a
【讨论】:
【参考方案3】:我认为这是 API 的错误。
sp = getSpotifyAPI(1);
models = sp.require('sp://import/scripts/api/models')
models.library.playlists;
> TypeError: Cannot read property 'length' of undefined
try models.library.playlists catch(err) console.log(err.stack)
> TypeError: Cannot read property 'length' of undefined
at map (sp:216:20)
at Library.<anonymous> (eval at evalModule (sp:55:46))
at unknown source
at Object._evaluateOn (unknown source)
at Object._evaluateAndWrap (unknown source)
at Object.evaluate (unknown source)
挖掘 models.js 文件,我们看到 Library 使用 sp.core.library.getPlaylists() 来获取播放列表,它应该返回一个数组但返回 undefined:
sp.core.library.getPlaylists()
> undefined
sp.core.library.getPlaylists
> function getPlaylists() [native code]
由于 sp.core.library.getPlaylists 是本机代码,我无法深入兔子洞以查看它在做什么。因此,除非 Spotify 开发人员说这是所需的行为,否则我的结论是这是一个错误。
【讨论】:
谢谢伙计!我看起来 sp.core.library.getPlaylists 在 . 0.8.0–701-gc2d793a 但没有提及原因:S 我们的 API 不支持获取用户的播放列表。以上是关于Spotify Apps API:图书馆类不会返回用户播放列表的主要内容,如果未能解决你的问题,请参考以下文章
使用 Spotify Apps API 的空或未定义的艺术家图像
无法在 Spotify Apps API 中获取艺术家的专辑
Spotify Apps Api - 创建播放列表的“分享”按钮