Javascript 如何定义当前域的条件常数?

Javascript 如何定义当前域的条件常数?,javascript,Javascript,我试图在我的网站上做一个简单的代码更改,但我没有太多的知识 My site current运行的Heroku应用程序定义了一些配置变量。应用程序根据这些变量计算输出。问题是我在主域(mydomain.com)和子域(pro.mydomain.com)中运行相同的应用程序。因此,我希望部分计算使用不同的变量,具体取决于用户访问的域 我曾尝试在常量定义部分使用window.location.hostname,但没有成功 现在开始的app.js文件如下所示: require('dotenv').con

我试图在我的网站上做一个简单的代码更改,但我没有太多的知识

My site current运行的Heroku应用程序定义了一些配置变量。应用程序根据这些变量计算输出。问题是我在主域(mydomain.com)和子域(pro.mydomain.com)中运行相同的应用程序。因此,我希望部分计算使用不同的变量,具体取决于用户访问的域

我曾尝试在常量定义部分使用window.location.hostname,但没有成功

现在开始的app.js文件如下所示:

require('dotenv').config();
const express = require('express')
    , flash = require("express-flash")
    , ADMIN_EMAIL = process.env.ADMIN_EMAIL
    , NOREPLY_EMAIL = process.env.NOREPLY_EMAIL
    , EXPIRY_TIME = parseInt(process.env.EXPIRY_TIME)
    , FEE = parseFloat(process.env.FEE)
这就是我尝试过但没有成功的地方:

require('dotenv').config();
const express = require('express')
        , flash = require("express-flash")
        , ADMIN_EMAIL = process.env.ADMIN_EMAIL
        , NOREPLY_EMAIL = process.env.NOREPLY_EMAIL
        , EXPIRY_TIME = parseInt(process.env.EXPIRY_TIME)
        , FEE = window.location.hostname === 'pro.mydomain.com' ? parseFloat(process.env.FEE_PRO) : parseFloat(process.env.FEE)
我需要的是,通过mydomain.com访问的用户可以获得一笔费用,通过pro.mydomain.com访问的用户可以获得另一笔费用。我目前不担心身份验证或其他问题,不管是否有人可以访问这两个方面


此外,我有意尝试在不使用第二个Heroku应用程序的情况下执行此操作,以避免额外成本。

正如我在评论中提到的,您需要在请求级别而不是全局级别处理此操作。两个域的服务器端相同。 在请求级别,您可以这样做:

if (req.hostname === 'pro.mydomain.com') {
    ...
}

正如我在评论中提到的,您需要在请求级别而不是全局级别处理它。两个域的服务器端相同。 在请求级别,您可以这样做:

if (req.hostname === 'pro.mydomain.com') {
    ...
}

据我所知,您正在尝试确定服务器端的域。服务器端对于这两个域是相同的。您需要为每个请求确定域。好的,Valerii,有意义。你建议我怎么做?谢谢,据我所知,您正在尝试确定服务器端的域。服务器端对于这两个域是相同的。您需要为每个请求确定域。好的,Valerii,有意义。你建议我怎么做?谢谢