我将 .env 文件配置为具有 AWS 凭证,但它不起作用。
在文档中,写到配置将自动从 .env 文件加载。但事实并非如此。
我尝试添加以下内容
aws.config.update({
region: process.env.AWS_region,
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
});
这奏效了。
知道为什么 AWS SDK 不自动加载选项吗?
"aws-sdk": "^2.288.0",
"dotenv": "^6.0.0",
最佳答案
老问题,但因为我在测试中遇到了这个问题而回答。
这是因为 AWS SDK 在首次需要或导入 SDK 时捕获凭证。
当你运行 dotenv.config()
时,它已经完成了这个并且不会重新读取环境变量。
自行更新 AWS 配置设置值,是一个合理的解决方案。
关于node.js - AWS JS SDK 不从环境变量加载凭证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51743555/