【问题标题】:Configure Node.js app based on machine type or IDE flags根据机器类型或 IDE 标志配置 Node.js 应用程序
【发布时间】:2016-09-10 21:53:35
【问题描述】:
当在 Web 服务器上运行或在 localhost 上运行时,我希望能够在我的服务器上执行不同的操作,例如禁用日志或连接到不同的数据存储。
是否有任何方法可以根据某些 IDE 定义(在本例中特别是 WebStorm)以不同方式配置 Node.js 应用程序,或者识别运行 Node.js 快速服务器的机器 - 更具体地说,检测服务器是否正在运行在 Azure 或 localhost 上。
【问题讨论】:
标签:
javascript
node.js
azure
express
webstorm
【解决方案1】:
在 Node 中执行此操作的标准方法是使用标识每个唯一部署配置的环境变量,并结合映射到每个配置的自定义设置:
这是一个很好的 SO 主题:
environment configs in Node
结合以上内容,在 Azure 中,您将在应用程序设置中定义 NODE_ENV 变量来表示您在 Azure 中运行,如下所示:
在您的代码中,您检查 process.env.NODE_ENV 的值,并根据您是在 Azure、localhost 还是其他适合您需要的环境使用适当的操作。
这是一个进一步演示的小代码示例:
github sample
祝你好运!