[英]Process.env not reading? Amazon S3 Bucket
我正在尝试使用 multer 设置我的 Amazon AWS 访问密钥和秘密:
var upload = multer({ secretAccessKey: process.env.AWS_ACCESS_SECRET, accessKeyId: process.env.AWS_ACCESS_KEY, })
在我的 zshrc 文件中,我已经完成了
export AWS_ACCESS_SECRET="mysecret" export AWS_ACCESS_KEY="mykey"
但是在运行节点上,我得到了错误
if (.opts secretAccessKey) throw new Error('secretAccessKey is required')
然而,硬编码密钥和秘密使其工作,但显然这不是 go 最安全的方法。
我已经完成了 source ~/.zshrc 但它仍然显示错误。
开箱即用的 Multer 不支持 s3。 您创建新multer
object 的方式不正确。 创建新的multer
object 时唯一可用的选项是dest/storage
、 fileFilter
和limits
。
如果你想直接使用 Multer 和 S3,你可以使用multer-s3
。 有了它,您可以传入一个新的选项storage
,它将获取您的secretAccessKey
和您的accessKeyId
。
如果您不使用multer-s3
,您可以将multer
与aws-sdk
的S3
Client一起使用。
var multer = require('multer'); var AWS = require('aws-sdk'); var accessKeyId = process.env.AWS_ACCESS_KEY; var secretAccessKey = process.env.AWS_ACCESS_SECRET; var upload = multer({dest: '/temp'}); var s3 = new AWS.S3({ accessKeyId: accessKeyId, secretAccessKey: secretAccessKey });
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.