Skip to content

Instantly share code, notes, and snippets.

@mikestead
Created September 4, 2012 04:03
Show Gist options
  • Save mikestead/3616417 to your computer and use it in GitHub Desktop.
Save mikestead/3616417 to your computer and use it in GitHub Desktop.
Node HTTP Proxy
var httpProxy = require('http-proxy');
var openAccess = function () {
return function (request, response, next) {
if (request.method == 'OPTIONS') {
response.setHeader('access-control-allow-origin', request.headers.origin);
response.setHeader('access-control-allow-credentials', 'true');
response.setHeader('access-control-allow-methods', request.method);
response.setHeader('access-control-allow-headers', request.headers['access-control-request-headers']);
response.writeHead(200);
response.end();
}
else {
response.setHeader('Access-Control-Allow-Origin', '*');
response.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS, HEAD, POST, PUT, DELETE');
response.setHeader('Access-Control-Allow-Headers', 'X-Requested-With');
next();
}
}
}
httpProxy.createServer(
openAccess(),
'localhost',
8001
).listen(8000);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment