0

我希望我的应用程序的用户

  1. 将 Soundcloud 轨道 URL 粘贴到<input>字段中
  2. 按提交<button>
  3. 有一个函数返回轨道的id

到目前为止,我知道如何做的唯一方法/resolve是通过命令行的curl命令,如此处所示http://developers.soundcloud.com/docs/api/reference#resolve。有没有办法通过 Javascript 函数来做到这一点?

例如

SC.resolve(trackURL, id, function(id, error){});
4

2 回答 2

5

所做的只是一个curlHTTP 请求。JavaScript 绝对能够执行 HTTP 请求,最常见的方法是使用XMLHttpRequest也称为 AJAX。

流行的库,例如 jQuery,简化了发出这些请求,例如:

// replace YOUR_CLIENT_ID with one you can get from http://soundcloud.com/you/apps
var trackUrl = 'http://soundcloud.com/matas/hobnotropic';
$.get(
  'http://api.soundcloud.com/resolve.json?url=' + trackUrl + '&client_id=YOUR_CLIENT_ID', 
  function (result) {
    console.log(result);
  }
);

这里的工作示例。

于 2013-08-09T17:50:39.813 回答
1

实际上,您可以直接对 API 中的几乎所有资源使用 SC.get()(无需 jQuery)。像这样:

<script src="http://connect.soundcloud.com/sdk.js"></script>

<script>

   SC.initialize({
       client_id: "YOUR_CLIENT_ID"
   });

   SC.get("/resolve/?url=https://soundcloud.com/dogwill", {limit: 1}, function(result){
       console.log(result);
   });

</script>
于 2014-11-13T08:49:09.763 回答