2015-10-18 30 views
0

目前,我試圖使用JavaScript API的SoundCloud包裝來獲得所有從用戶的聲音的飼料是這樣的:使用soundloud API從用戶的所有曲目飼料

$('head').append("<script src='https://connect.soundcloud.com/sdk/sdk-3.0.0.js'>"); 

SC.initialize({ 
    client_id: 'YOUR_CLIENT_ID', 
    redirect_uri: '/callback.html' 
}); 

// initiate auth popup 
SC.connect(function() { 
    SC.get('/me', function(me) { 
     alert('Hello, ' + me.username); 
    }); 
}); 

var dashTracks = SC.get('/me/activities/tracks/affiliated'); 

但是當我查看控制檯,有錯誤

Uncaught ReferenceError: SC is not defined 

我不太清楚如何解決它。

回答

1

等待腳本在執行代碼之前被加載。

var s = document.createElement('script'); 
s.type = 'text/javascript'; 
s.src = 'https://connect.soundcloud.com/sdk/sdk-3.0.0.js'; 
$('head').append(s); 

s.onload = init; 

function init() { 
    SC.initialize({ 
     client_id: 'YOUR_CLIENT_ID', 
     redirect_uri: '/callback.html' 
    }); 

    SC.connect(function() { 
     SC.get('/me', function (me) { 
      alert('Hello, ' + me.username); 
     }); 
    }); 

    var dashTracks = SC.get('/me/activities/tracks/affiliated'); 
} 
+0

哎呦,我已經這樣做了。編輯我的OP以反映如何。我將它封裝爲Chrome應用程序,該應用程序主要在後臺運行,因此我沒有任何可以在SC.initialize – ingleback

+0

@ingleback旁邊編輯的HTML編輯器查看更新後的答案。 –