node.js - 如何使用nodejs将客户端/用户从一台服务器反向代理到另一台服务器?

标签 node.js reverse-proxy http-proxy node-http-proxy http-proxy-middleware

我正在寻找一种方法,通过使用 POST 请求将在 localhost:7200 上运行的应用程序反向代理到在 10.0.0.1:3000 上运行的另一台服务器

apiRoutes.post('/route', function(req, res) {
res.json({ message: 'Done' });
  var tunroute=req.body.address;
  console.log(tunroute);

   //{tunroute contains the address i.e 10.0.0.1:300}

   //{ here is where i want to proxy to server at 10.0.0.1:300 }

});

请帮忙!!

最佳答案

所以我找到了答案, 我用过

http-proxy-middleware

用于从一台服务器到另一台服务器的反向代理客户端

这是相同的代码。

var express = require('express');
var app = express();
var proxy = require('http-proxy-middleware');
var methodOverride = require('method-override');
var target = ['http://www.facebook.com',
              'http://10.0.0.1:3000',
              'http://127.0.0.1']

  app.use(methodOverride());

  app.get('/change',function(req,res){

    options = {
            target: target[2],      // target host
            changeOrigin: false,    // needed for virtual hosted sites
            ws: true,               // proxy websockets
        };
    var = exampleProxy = proxy(options);

    app.use('/', exampleProxy);

    return res.redirect("./");
  });

  app.listen(3000);

关于node.js - 如何使用nodejs将客户端/用户从一台服务器反向代理到另一台服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44470393/

相关文章:

node.js - 使用现有套接字的 Node http请求

javascript - 如何在虚拟数据类型中使用 JSONB 数据?

node.js - 使用无序批量更新插入时“undefined is not a function”

apache - 如何使用反向代理配置 apache ssl

NGINX 反向代理 : Many html status code 400 responses, 为什么?

javascript - 如何使用 express-http-proxy 修改响应头

powershell - 如何在 Invoke-WebRequest 中显示 TLS 握手信息和 CONNECT 请求

javascript - 能否动态地将匿名方法(函数)变成命名方法?

node.js - Mongoose - find({},cb) 和 find({}).exec(cb) 之间有什么区别?

redirect - NGINX 始终重定向到本地主机和端口