searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

minio golang sdk 使用示例《三》

2023-10-25 09:48:27
102
0
1. 本示例需要导入sdk golang package 如下:
 
import (
    "context"
    "log"
    "time"
    "github.com/minio/minio-go/v7"
    "github.com/minio/minio-go/v7/pkg/credentials"
)
 
2. 首先初始化minio客户端,指定enpoint、accesskey,secretkey 参数
 
s3Client, err := minio.New("s3.amazonaws.com", &minio.Options{
            Creds:  credentials.NewStaticV4("YOUR-ACCESSKEYID", "YOUR-SECRETACCESSKEY", ""),
            Secure: true,
           })
if err != nil {
           log.Fatalln(err)
}
 
3. 设置copy object的选项参数,包括源对象和目标对象的选项参数
 
// Source object
src := minio.CopySrcOptions{
        Bucket: "my-sourcebucketname",
        Object: "my-sourceobjectname",
 
        // All following conditions are allowed and can be combined together.
        // Set modified condition, copy object modified since 2014 April.
        MatchModifiedSince: time.Date(2014, time.April, 0, 0, 0, 0, 0, time.UTC),
 
        // Set unmodified condition, copy object unmodified since 2014 April.
        // MatchUnmodifiedSince: time.Date(2014, time.April, 0, 0, 0, 0, 0, time.UTC),
 
        // Set matching ETag condition, copy object which matches the following ETag.
        // MatchETag: "31624deb84149d2f8ef9c385918b653a",
 
        // Set matching ETag copy object which does not match the following ETag.
        // NoMatchETag: "31624deb84149d2f8ef9c385918b653a",
}
 
// Destination object
dst := minio.CopyDestOptions{
        Bucket: "my-bucketname",
        Object: "my-objectname",
}
 
4. 调用CopyObject接口,把源对象拷贝到目标对象
 
// Initiate copy object.
ui, err := s3Client.CopyObject(context.Background(), dst, src)
if err != nil {
        log.Fatalln(err)
}
 
log.Printf("Copied %s, successfully to %s - UploadInfo %v\n", dst, src, ui)
 
0条评论
0 / 1000
白****喜
13文章数
0粉丝数
白****喜
13 文章 | 0 粉丝
原创

minio golang sdk 使用示例《三》

2023-10-25 09:48:27
102
0
1. 本示例需要导入sdk golang package 如下:
 
import (
    "context"
    "log"
    "time"
    "github.com/minio/minio-go/v7"
    "github.com/minio/minio-go/v7/pkg/credentials"
)
 
2. 首先初始化minio客户端,指定enpoint、accesskey,secretkey 参数
 
s3Client, err := minio.New("s3.amazonaws.com", &minio.Options{
            Creds:  credentials.NewStaticV4("YOUR-ACCESSKEYID", "YOUR-SECRETACCESSKEY", ""),
            Secure: true,
           })
if err != nil {
           log.Fatalln(err)
}
 
3. 设置copy object的选项参数,包括源对象和目标对象的选项参数
 
// Source object
src := minio.CopySrcOptions{
        Bucket: "my-sourcebucketname",
        Object: "my-sourceobjectname",
 
        // All following conditions are allowed and can be combined together.
        // Set modified condition, copy object modified since 2014 April.
        MatchModifiedSince: time.Date(2014, time.April, 0, 0, 0, 0, 0, time.UTC),
 
        // Set unmodified condition, copy object unmodified since 2014 April.
        // MatchUnmodifiedSince: time.Date(2014, time.April, 0, 0, 0, 0, 0, time.UTC),
 
        // Set matching ETag condition, copy object which matches the following ETag.
        // MatchETag: "31624deb84149d2f8ef9c385918b653a",
 
        // Set matching ETag copy object which does not match the following ETag.
        // NoMatchETag: "31624deb84149d2f8ef9c385918b653a",
}
 
// Destination object
dst := minio.CopyDestOptions{
        Bucket: "my-bucketname",
        Object: "my-objectname",
}
 
4. 调用CopyObject接口,把源对象拷贝到目标对象
 
// Initiate copy object.
ui, err := s3Client.CopyObject(context.Background(), dst, src)
if err != nil {
        log.Fatalln(err)
}
 
log.Printf("Copied %s, successfully to %s - UploadInfo %v\n", dst, src, ui)
 
文章来自个人专栏
golang 学习分享
13 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0