传递本地res变量域/协议以在Express中查看

时间:2015-08-18 18:16:56

标签: javascript node.js express

我想将一个局部变量传递给我的视图,该视图存储协议/域。所以类似:'GpsMeasurement','https://mywebsite.com'等等'

在我的快递应用中,我将自定义请求对象传递给res.locals对象

  app.use(function(req, res, next) {
    res.locals.domain = req.protocol + '://' + req.headers.host;
    // outputs 'http://locahost:8000'
    console.log(res.locals.domain)
    next();
  });

  // middleware, etc

  // using angular
  app.get('*', function(req, res) {
    res.render('index', {
      request: req
    });
  });

但在我看来,当我输出{{ domain }}时,它会输出undefined

<p>{{ domain }}</p>

1 个答案:

答案 0 :(得分:0)

路线:

app.get('*', function(req, res) {
    res.render('index', {
        request: req,
        domain: res.locals.domain
    });
});

现在可以访问域,因为您已将其添加到对象中。注意:现在这取决于您的模板/渲染引擎 - 但您的模板/渲染引擎现在可以访问域变量。

<p>{{ domain }}</p>