生成预签名下载链接
以下代码演示如何为一个指定对象生成一个预签名的下载链接。
func (p *S3Demo) generateUrl() {
bucket := "<your-bucket-name>"
key := "<your-key-name>"
expire := <expire-time> // e.g. 5*time.Minute
req, _ := p.svc.GetObjectRequest(&s3.GetObjectInput{
Bucket: &bucket,
Key: &key,
})
urlStr, err := req.Presign(expire)
if err != nil {
fmt.Println("err, ", err)
return
}
fmt.Println("success, ", urlStr)
}
参数如下:
参数 | 类型 | 说明 | 是否必要 |
---|---|---|---|
Bucket | *string | bucket的名称 | 是 |
Key | *string | 对象的key | 是 |
Expires | time.Duration | 超时时间 | 是 |