Skip to content

Instantly share code, notes, and snippets.

@nylen
Created April 29, 2016 21:37
Show Gist options
  • Save nylen/c87fb959013f6ad3c10f11a04094f861 to your computer and use it in GitHub Desktop.
Save nylen/c87fb959013f6ad3c10f11a04094f861 to your computer and use it in GitHub Desktop.
mixxx-listener.js
var net = require('net');
var server = net.createServer(function(sock) {
console.log(
'connection from %s:%d',
sock.remoteAddress, sock.remotePort
);
var req = '',
gotHeaders = false;
sock.on('data', function(data) {
if (!gotHeaders) {
req += data.toString();
if (req.indexOf('\r\n\r\n') >= 0) {
gotHeaders = true;
console.log(req);
sock.end('HTTP/1.0 200 OK\r\n\r\n');
}
}
});
sock.on('error', function(err) {
if (err.code === 'ECONNRESET' && err.syscall === 'read') {
// Mixxx / libshout metadata request is badly behaved?
} else {
throw err;
}
});
sock.on('close', function() {
console.log('connection closed');
});
});
server.listen(8888, function() {
console.log('listening on :8888');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment