var httpp = require('httpp');
var net = require('net');
var url = require('url');
console.log('http/UDT PROXY server...');
// Create an HTTP tunneling proxy
var proxy = httpp.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('okay');
}).listen(1337);
proxy.on('request', function(req, socket, head) {
console.log('got request...'+req.url);});
proxy.on('connect', function(req, cltSocket, head) {
// connect to an origin server
console.log("The URL is "+req.url);
var srvUrl = url.parse('http://' + req.url);
var srvSocket = net.connect(srvUrl.port, srvUrl.hostname, function() {
cltSocket.write('HTTP/1.1 200 Connection Established\r\n' +
'Proxy-agent: Node-Proxy\r\n' +
'\r\n');
srvSocket.write(head);
srvSocket.pipe(cltSocket);
cltSocket.pipe(srvSocket);
});
});