Skip to content

Instantly share code, notes, and snippets.

@dongyuwei
Created March 27, 2012 10:10
Show Gist options
  • Save dongyuwei/2214570 to your computer and use it in GitHub Desktop.
Save dongyuwei/2214570 to your computer and use it in GitHub Desktop.
http proxy for nodejs
(function(module) {
var http = require('http');
module.exports = function (request, response, serverHost, serverPort) {
response.header('X-Proxyed-By' ,'Weibo-Packager');
serverPort = serverPort || 80;
var proxyRequest = http.request({
host : serverHost || request.headers.host,
port : serverPort,
path : request.url,
method : request.method,
headers : request.headers
}, function(proxyResponse) {
proxyResponse.pipe(response);
response.writeHead(proxyResponse.statusCode, proxyResponse.headers);
});
proxyRequest.on('error', function(e) {
console.error(new Date().toLocaleString() + ' error in proxyRequest: ', e);
});
request.pipe(proxyRequest);
}
})(module);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment