Skip to content

Instantly share code, notes, and snippets.

@jafstar
Created December 23, 2011 09:03
Show Gist options
  • Save jafstar/1513660 to your computer and use it in GitHub Desktop.
Save jafstar/1513660 to your computer and use it in GitHub Desktop.
Node + SoundCloud = XML Playlist
//MUSIC
app.get('/playlist', function(req, res){
var artist = "artistName";
var key = "1234567yourKeyHere";
var url = "http://api.soundcloud.com/users/" + artist + "/tracks.json?consumer_key=" + key;
var response = [];
var options = {
host: 'api.soundcloud.com',
port: 80,
path: "/users/" + artist + "/tracks.json?consumer_key=" + key,
method: 'GET'
};
var req = http.request(options, function(res) {
res.setEncoding('utf8');
res.on('data', function(chunk) {
response += chunk;
});
res.on('end', function () {
renderStack(response);
});
});
req.on('error', function(e) {
console.log('problem with request: ' + e.message);
});
function renderStack(txt) {
var j = JSON.parse(txt);
var count = j.length;
var stack = [];
for(var i = 0; i < count; i++) {
stack.push([
j[i]['title'],
j[i]['uri'] + "/stream?oauth_consumer_key=" + key,
j[i]['artwork_url']
]);
}
res.contentType('text/xml');
res.render('playlist',{
stack: stack
});
}
req.end();
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment