获取请求后无法执行函数 - SoundCloud API

时间:2014-12-13 20:51:54

标签: javascript soundcloud

这是一个奇怪的问题,可能有一个明显的解决方案。我只是在点击“新曲目”按钮时尝试向浏览器发送警报。但是,按下按钮后,将发送请求并收到有效响应,没有任何反应。无论get函数内部是什么,似乎都没有发生。如果不是很明显我对JS很陌生,那么如果有人能够解释为什么这不起作用那就太棒了!

编辑:API_KEY只是一个占位符

<!DOCTYPE html>
<html>
<head>
    <style type="text/css">
        html, body, #map-canvas { height: 100%; margin: 0; padding: 0; }
    </style>
    <script src="http://connect.soundcloud.com/sdk.js"></script>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script src="https://maps.googleapis.com/maps/api/js?key=API_KEY"></script>

    <script>
        SC.initialize({
            client_id: "API_KEY"
        });

        function newTrack(){
            SC.get("/tracks", {limit: 1}, function(tracks){
                alert("Latest track: " + tracks[0].title);
            });
        };
    </script>

</head>
<body>
    <input type="button" value="new track" onclick="newTrack()"/>
    <div id="track"></div>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

部分原因可能是你没有得到任何&#34;曲目&#34;来自SoundClound上的&#34; get&#34;调用,你试图访问null的[0]索引,这是一个错误..试试这个。

SC.get("/tracks", {limit: 1}, function(tracks){
            if(tracks && tracks.length > 0)
                alert("Latest track: " + tracks[0].title);
            else 
                alert('There are no tracks')
        });