Skip to content

Instantly share code, notes, and snippets.

@mildsunrise
Last active October 2, 2015 20:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mildsunrise/2311433 to your computer and use it in GitHub Desktop.
Save mildsunrise/2311433 to your computer and use it in GitHub Desktop.
Fast, simple, extensible Node.JS direct proxy.
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'
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