Dre*_*rew 9 javascript node.js sails.js
在生产中,我将AWS凭证存储为heroku配置变量.
在开发中我想在config/local.js中包含配置详细信息,但是如何在控制器中访问配置详细信息?
local.js包含:
module.exports = {
aws_key: "...", aws_secret: "..."
}
在我的控制器中,我尝试了aws_key,config.aws_key和其他人 - 但没有运气.是否有一个主应用程序命名空间,我可以用它来限制local.js导出的属性?
我是帆船新手,我觉得这应该是直截了当的 - 任何帮助都会受到赞赏.
Dre*_*rew 33
找到解决方案 第3步是我遇到麻烦的地方.
我没有意识到是,module.exports.thing使得thing可以通过对象sails.config.thing.很高兴知道.
1)我在config/aws.js上创建了一个带有内容的新文件
// Get heroku config values
module.exports.aws = {
key: process.env.AWS_KEY,
secret: process.env.AWS_SECRET
}
Run Code Online (Sandbox Code Playgroud)
2)在local.js中放置实际的AWS信用(由于sails使用gitignore自动忽略local.js,因此不会在存储库中结束).
aws: {
key: actual-key,
secret: actual-secret
}
Run Code Online (Sandbox Code Playgroud)
这允许我们无法访问heroku配置设置的本地测试,同时保护这些值不会暴露在github仓库中.
3)现在,要在控制器中访问:
var aws_config = sails.config.aws;
AWS.config.update({
accessKeyId: aws_config.key,
secretAccessKey: aws_config.secret
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6143 次 |
| 最近记录: |