如何创建预先签名的put URL并使用环境变量设置存储桶和钥匙



我正在使用以下代码来创建一个预先签名的put url:

svc := s3.New(nil)
req, _ := svc.PutObjectRequest(&s3.PutObjectInput{
    Bucket: aws.String("myBucket"),
    Key:    aws.String("myKey"),
})
str, err := req.Presign(15 * time.Minute)
log.Println("The URL is:", str, " err:", err)

,但我想从环境变量中获取配置:

CONFIGURATIONS={ "Bucket": "myBucket", "Key": "myKey" }

我只有两个星期的golang,我主要有node.js的背景,所以,如果这个问题非常基本,我很抱歉。

更好地说明,我正在尝试做到这一点...但是走了:

const CONFIGURATIONS = JSON.parse(process.env.CONFIGURATIONS)
const S3 = new AWS.S3()
S3.generatePresignedUrl('putObject', CONFIGURATIONS, callback...)

非常感谢!

如果我正确理解您的问题,则需要从ENV变量中检索存储桶和密钥名称。这很容易去做。os软件包具有GetEnv功能。

假设您的ENV变量称为AWS_BUCKETAWS_KEY这是获取值的方法:

bucketName := Getenv("AWS_BUCKET")
key := Getenv("AWS_KEY")

您可以在此处检查包装文档。

相关内容

  • 没有找到相关文章

最新更新