节点-如何根据vhost将应用特定的变量传递给静态应用

时间:2018-11-24 10:33:12

标签: node.js express

我有一些节点应用程序,它们查找特定的虚拟主机app1.domain.com(app2,app3等),然后提供一些静态内容(index_1 / 2 / 3.html / js / scss)。

我想根据虚拟主机将一些特定于配置/应用程序的变量传递给静态应用程序。我该怎么办?

    this.app = app;
    this.config = new Config();

    this.static = express.Router();

    this.static.use((req, res, next) => {
        const subhost = req.vhost[0];
        req.url = `/${subhost}${req.url}`;
        next();
    });

    // TODO: how to pass static variables here depending on the vhost (req.url)
    this.static.use(serveStatic(path.join(__dirname, 'public')));

    this.app.use(vhost("*.localhost", this.static));

    this.app.use("/api/v1/core", CoreRouter);

方面:您认为更好的方法是让每个vhost应用程序查询某个终结点(通过其index.js文件)以获取其应用程序特定的变量,而不是在提供静态内容时尝试直接传递这些vairables。< / p>

0 个答案:

没有答案