2013-02-21 41 views
2

我試圖用查詢(甚至標籤/流派過濾器)過濾一個SoundCloud用戶的軌跡。我可以獲取用戶的曲目,但只要添加查詢參數,它就會返回所有聲音雲用戶曲目。過濾一個用戶軌跡時的Soundcloud API錯誤

這不起作用:

SC.get('/users/00001/tracks', {q: 'Black Night'}, function(tracks) { 
    // returns tracks from all soundcloud users which contain 'Black Night' 
    // rather than the single user  
}); 

也不這樣:

SC.get('/tracks', {user_id: '00001', q: 'Black Night'}, function(tracks) { 
    // returns tracks from all soundcloud users which contain 'Black Night' 
    // rather than the single user  
}); 
+0

重複http://stackoverflow.com/questions/14752471/how-to-search-specific-users-tracks逐標籤與最完善的雲的API。這看起來像你所做的應該工作。但事實並非如此。我寫了關於它的SoundCloud,但我沒有收到回覆。 – MikeSmithDev 2013-03-01 05:06:17

回答

1

你會首先由特定用戶得到的所有歌曲的曲目列表,對於您可以使用您使用的代碼。

之後,你通過你剛剛檢索到的所有歌曲需要循環,並指定曲目[I] .genre一個變量(假設VAR track_genre)

接下來,檢查是否track_genre === myGenre(一參數你給的功能,用戶可以選擇)

如果是這種情況,繼續透過oEmbed小部件

我猜主要的外賣是,你可以訪問你檢索歌曲的曲風'SC.get'並對其進行過濾,但不能SC.從特定用戶獲取特定流派。

無論如何,我就是這麼解決這個問題的;我敢肯定,會有更好的解決方案,但這個工程如此... ;-)

1

的SoundCloud API不會這樣的。

您可以通過長期,流派,BPM,日期等 搜尋所有曲目,也可以獲取用戶資源(軌道,收藏夾,組,追隨者等)

裏面軌道或任何其它用戶搜索的最佳途徑資源,就是獲得所有結果,並在結果中進行搜索。

Here下的子資源,你可以找到/users/{id}/tracks - 用戶

+0

你能舉個例子說明你如何過濾單個用戶的曲目?或者暗示它無法在API級別完成。 – alex 2013-02-25 14:40:04

+0

剛編輯答案。 – cucko 2013-02-25 16:16:43

+0

但是,我們的目標是從用戶的曲目中返回一個過濾結果。我能夠獲得單個用戶的曲目。我想過濾它。例如,獲取一個用戶的「民間」流派曲目。 – alex 2013-02-25 16:44:56