Skip to content

Instantly share code, notes, and snippets.

@jameswomack
Created September 28, 2012 08:13
Show Gist options
  • Save jameswomack/3798590 to your computer and use it in GitHub Desktop.
Save jameswomack/3798590 to your computer and use it in GitHub Desktop.
Node.js proxy for couchdb audio
<audio controls="controls">
<source src="http://machine.local:8976/px/ttt/cry-bla.mp3" type="audio/mpeg">
</audio>
var http = require('http');
var u = require('util');
http.createServer(function(request, response) {
u.log(request.connection.remoteAddress + ": " + request.method + " " + request.url);
var proxy = http.createClient(5984, "localhost")
var proxy_request = proxy.request(request.method, request.url, request.headers);
proxy_request.addListener('response', function (proxy_response) {
proxy_response.addListener('data', function(chunk) {
response.write(chunk, 'binary');
});
proxy_response.addListener('end', function() {
response.end();
});
proxy_response.headers['content-type'] = 'audio/mp3';
console.log(proxy_response.headers);
response.writeHead(proxy_response.statusCode, proxy_response.headers);
});
request.addListener('data', function(chunk) {
proxy_request.write(chunk, 'binary');
});
request.addListener('end', function() {
proxy_request.end();
});
}).listen(8976);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment