Last active
October 2, 2015 20:08
-
-
Save mildsunrise/2311433 to your computer and use it in GitHub Desktop.
Fast, simple, extensible Node.JS direct proxy.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
http = require 'http' | |
util = require 'util' | |
url = require 'url' | |
server = http.createServer (req, res) -> | |
request = url.parse req.url | |
request.headers = req.headers | |
request.method = req.method | |
oreq = http.request request, (ores) -> | |
res.writeHead ores.statusCode, ores.headers | |
ores.pipe res | |
oreq.on 'error', (err) -> | |
res.statusCode = 503 | |
res.end util.inspect(err)+'\n' | |
req.pipe oreq | |
server.listen 8080, '127.0.0.1', -> | |
console.log 'Proxy server running on 127.0.0.1 at port 8080' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var http = require('http') | |
, util = require('util') | |
, url = require('url'); | |
http.createServer(function (req, res) { | |
var request = url.parse(req.url); | |
request.headers = req.headers; | |
request.method = req.method; | |
var oreq = http.request(request, function (ores) { | |
res.writeHead(ores.statusCode, ores.headers); | |
ores.pipe(res); | |
}).on('error', function (err) { | |
res.statusCode = 503; | |
res.end(util.inspect(err)+'\n'); | |
}); | |
req.pipe(oreq); | |
}).listen(8080, '127.0.0.1', function () { | |
console.log('Proxy server running on 127.0.0.1 at port 8080'); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment