繁体   English   中英

Process.env 不读取? 亚马逊 S3 存储桶

[英]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/storagefileFilterlimits

如果你想直接使用 Multer 和 S3,你可以使用multer-s3 有了它,您可以传入一个新的选项storage ,它将获取您的secretAccessKey和您的accessKeyId

如果您不使用multer-s3 ,您可以将multeraws-sdkS3 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM