javascript - Node.js 配置文件与 .env 架构实践和构建模式

标签 javascript node.js design-patterns configuration architecture

我正在 Node.js 上开发服务器端应用程序,我正在考虑 config 文件的使用。但是当我用谷歌搜索它时......现在我有更多的问题而不是答案。

In my case I have a-lot-of functions with arguments different types of sensitivity not just only secret, tokens, keys. Most of this argument as user-depended. For example, user that launch app use to define (via CLI [promtly]): number of days, how much times something will execute, when and where, etc

例如我只是检查这个 questionarticle 。我的问题很简单:

Which one to use and why? (or where can I read more about it) Using only .env file, or only config.json or probably both like in article above? Is it OK to store all settings in package.json or not? (like in this question)

如果更有经验的 JS 开发者告诉我应该使用什么以及为什么,我会非常高兴。

即使这个问题被标记为已回答,请随时告诉我(以及 SO 上的每个人)您遇到此类问题的经历。但请记住,我问的不是*如何做*DotEnv用法(或任何其他 npm 模块)。这都是关于模式和实践的。

最佳答案

Is it OK to store all settings in package.json or not?

理论上你肯定可以做到这一点。但是您想要配置您的服务,并且通常使用不同的配置运行相同的包。因此,拥有某种配置文件确实很有意义,然后您可以为本地测试服务器、开发服务器、生产服务器等设置不同的配置。

.env file or config.json ?

这完全取决于你。然而 .env 文件似乎不支持任何嵌套数据,我认为这对于配置非常有用。我总是使用配置 json,到目前为止效果很好。

In my case I have a-lot-of functions with arguments different types of sensitivity not just only secret, tokens, keys.

对于生产环境中的敏感数据,您确实应该使用 secret 存储(例如 Vault)。用于本地测试 但这与环境无关。

Most values are user-depended

然后将它们存储在配置文件中,或使用数据库。

关于javascript - Node.js 配置文件与 .env 架构实践和构建模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56008919/

相关文章:

ruby-on-rails - 如何在 sails js 中创建模型的新实例?

node.js - Mongoose 嵌套模式与嵌套模型

c++ - 模拟器的状态机

java - 错误/异常累积设计模式

javascript - 如何在一个 Bootstrap 处于事件状态时隐藏面板?

asp.net - RegisterClientScriptBlock 代码未执行

javascript - 带 Handlebars 的 nodemailer 无法正确显示样式

java - 如何从java中的父类(super class)方法停止/退出子类方法的执行

javascript - 无法让 D3 粒子示例运行?

javascript - WebdriverJS : driver. manage().logs().get ('browser' ) 返回空数组