编程语言
首页 > 编程语言> > javascript – 在Soundcloud中按streamable = true过滤曲目

javascript – 在Soundcloud中按streamable = true过滤曲目

作者:互联网

我正在尝试使用Soundcloud的javascript SDK来返回可流式传输的曲目列表.

我的问题是:如何使用javascript SDK过滤仅可流式化歌曲的搜索结果?

以下示例将返回不可流式传输的歌曲:

SC.get('/tracks', {q: 'mat zo', filter: 'streamable'}).then(function (tracks) { 
    console.log(tracks); 
});

以下是请求的结果:

api.soundcloud.com/tracks?q=mat+zo&filter=streamable&format=json&client_id=[XXX]

我注意到此响应中的第一首曲目有streamable = false.
回复片段:


streamable: false
tag_list: “Remix Mat Zo Burn Ellie Goulding”
title: “Burn (Mat Zo Remix)”
track_type: “”

查看Soundcloud SDK文档,我没有看到这样做的方法,因为’filter’查询参数只接受'(all,public,private)’.

https://developers.soundcloud.com/docs/api/reference#tracks
(我正在看过滤器)

同样没有答案的问题:
stackoverflow.com/questions/23791711/filtering-tracks-by-streamable-in-soundcloud

提前谢谢,这是我的第一个问题.我可以根据要求提供更多代码.

解决方法:

API上的streamable属性没有(记录)过滤器.但是,您可以自己轻松过滤掉不可复制的曲目:

SC.get('/tracks', {q: 'mat zo'}).then(function (tracks) { 
    for(var i = 0; i < tracks.length; i++) {
        if(!(tracks[i].streamable)) {           
        tracks.splice(i,1);
      } 
    }
    console.log(tracks); 
});

标签:javascript,soundcloud
来源: https://codeday.me/bug/20190711/1432516.html