跳转至

PresignedPutObject

PresignedPutObject(ctx context.Context, bucketName, objectName string, expiry time.Duration) (*url.URL, error)

生成 HTTP PUT 操作的预签名 URL。浏览器/移动客户端可以指向此 URL,即使它是私有的,也可以直接将对象上传到存储桶中。此预签名 URL 可以有一个关联的过期时间(以秒为单位),超过该时间后,它将不再可用。默认过期时间为 7 天。

注意

您只能使用指定的对象名称上传到 S3。

参数

参数 类型 描述
ctx context.Context 自定义上下文,用于超时或取消调用
bucketName string 存储桶的名称
objectName string 对象的名称
expiry time.Duration 预签名 URL 的到期时间(以秒为单位)

示例

// Generates a url which expires in a day.
expiry := time.Second * 24 * 60 * 60 // 1 day.
presignedURL, err := minioClient.PresignedPutObject(context.Background(), "mybucket", "myobject", expiry)
if err != nil {
    fmt.Println(err)
    return
}
fmt.Println("Successfully generated presigned URL", presignedURL)