Noob help create simple reverse proxy usin Node.js

27 views
Skip to first unread message

Jim from Princeton

unread,
Jul 27, 2016, 1:05:13 PM7/27/16
to nodejs
I have a local server (Vera home automation controller) that will accept an http request like this:


but nas no whitelist or CORS support.  It works in a browser, but I cannot access using AJAX.

It was suggested that I use a proxy to get the return, but i cannot get it to work.

Can anyone give advice on what to try?

I've tried this and it works for websites, but not this little server:

var http = require('http'),
    net = require('net'),
    httpProxy = require('http-proxy'),
    url = require('url'),
    util = require('util');

var proxy = httpProxy.createServer();

var server = http.createServer(function (req, res) {
  util.puts('Receiving reverse proxy request for:' + req.url);

  proxy.web(req, res, {target: req.url, secure: false});
}).listen(8213);

server.on('connect', function (req, socket) {
  util.puts('Receiving reverse proxy request for:' + req.url);

  var serverUrl = url.parse('http://' + req.url);  //https!!

  var srvSocket = net.connect(serverUrl.port, serverUrl.hostname, function() {
    socket.write('HTTP/1.1 200 Connection Established\r\n' +
    'Proxy-agent: Node-Proxy\r\n' +
    '\r\n');
    srvSocket.pipe(socket);
    socket.pipe(srvSocket);
  });
});


help?


Reply all
Reply to author
Forward
0 new messages