[英]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.