按用户ID返回Soundcloud曲目列表

时间:2014-12-23 05:29:05

标签: javascript api soundcloud

我正在为DJ制作一个网站,我必须制作一个播放器。为了得到它,我想从用户那里获得所有曲目,然后使用这些曲目制作流媒体播放器。

我尝试了很多代码,最后一次尝试是我做过的最接近的,但它没有返回好的曲目。我不知道曲目的来源,但它不是我想要的用户。

这是我的代码:

SC.initialize({
    client_id: "17f834e2f3c8ef63fa411ef6942caf0f"
});

SC.get('/resolve', {
    url: 'https://soundcloud.com/stormthedj'
}, function(user) {
    theUserID = user.id;
});

SC.get("/tracks", {
    user_id: theUserID,
    limit: 100
}, function (tracks) {

for (var i = 0; i < tracks.length; i++) {
    console.log(tracks[i].title);
}

提前感谢您帮助我。

1 个答案:

答案 0 :(得分:0)

我不熟悉SoundCloud的JavaScript API,但我认为它是异步的。在这种情况下,请将tracks来电转移到传递给resolve来电的回调中。

SC.get('/resolve', {
    url: 'https://soundcloud.com/stormthedj'
}, function(user) {
    var theUserID = user.id;

    SC.get("/tracks", {
        user_id: theUserID,
        limit: 100
    }, function (tracks) {

      for (var i = 0; i < tracks.length; i++) {
          console.log(tracks[i].title);
      }
    }
});

请注意,QBluebird等承诺库可以帮助保持上述回调链更易于管理。