使用ExpressJs,我如何只代理某些主机,而其他一切只是呈现请求?

时间:2016-12-09 00:45:35

标签: node.js express proxy

var express = require('express')
var app = express()
var httpProxy = require('http-proxy')

var proxy = httpProxy.createProxyServer({});

app.use(function (req, res, next) {
  if (req.host === dev.app.com) {
    proxy.web(req, res, { target: req.url })
  } else {
    // don't proxy request
    // just render the page
  }
})

app.listen(3000, function () {
  console.log('Example app listening on port 3000!')
})

这就是我现在所拥有的,我尝试通过快速js文档阅读,但未能理解如何执行此操作。

1 个答案:

答案 0 :(得分:0)

如果我理解得很清楚,我相信你应该致电res.render('your-page-here');(如果您使用的是模板引擎,如Pug或ejs)

或者,如果您打算提供静态页面,例如res.sendFile(__dirname + '/index.html');