我应该把API密钥引用和env文件放在Node.js应用程序中的什么位置



我知道我不应该直接在app.js文件中硬编码我的api密钥和mongo URL。我应该把它们放在哪里?我应该把它们放在一个名为config.js的文件中,然后作为模块导出,然后在我的app.js文件中要求它吗?最好的方法是什么,这样当我转到生产时,我就不必改变任何事情了?

config.js文件中,您可以执行类似的操作

module.exports = {
  accessKeyId: process.env.SES_ACCESS_KEY_ID
}

现在通过在终端上使用以下命令将您的密钥放入environmentmt

export env.SES_ACCESS_KEY_ID='yourSecretKey'

现在使用设置做

var config = require('relativ/path/to/config.js');
someFunction(config.accessKeyId);

希望它能有所帮助:)

  • 我会选择config模块。这是一个简单的lib,它根据NODE_ENV值加载正确的json文件。例如,如果指定NODE_ENV=development npm start,它将加载development.json,依此类推

  • 另一种可能性是:在项目文件夹之外的系统中定义一个文件夹,然后从那里加载json文件。例如,如果定义/etc/opt/my-project-configs/,则会在本地系统和pre/pro服务器中创建该文件夹。您的代码不知道实际运行的是哪个环境,但会加载正确的配置文件。

相关内容

最新更新