MinIO Go Client API使用

1. 前言

本文我们将学习MinIO Go Client API使用,MinIO安装参考。对于完整的API以及示例,请参考Go Client API Reference

2. Go Client

2.1 初始化MinIO Client

MinIO client需要以下4个参数来连接与Amazon S3兼容的对象存储

endpoint :对象存储服务的URL

accessKeyID:Access key是唯一标识你的账户的用户ID,默认minioadmin

secretAccessKey:Secret key是你账户的密码,默认minioadmin

secure:true代表使用HTTPS

2.2 样例

package main

import (
    "log"

    "github.com/minio/minio-go/v7"
    "github.com/minio/minio-go/v7/pkg/credentials"
)

func main() {
    endpoint := "play.min.io"
    accessKeyID := "Q3AM3UQ867SPQQA43P2F"
    secretAccessKey := "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG"
    useSSL := true

    // Initialize minio client object.
    minioClient, err := minio.New(endpoint, &minio.Options{
        Creds:  credentials.NewStaticV4(accessKeyID, secretAccessKey, ""),
        Secure: useSSL,
    })
    if err != nil {
        log.Fatalln(err)
    }

    log.Printf("%#v\n", minioClient) // minioClient is now setup
}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Minio Golang客户端可以帮助您在Go应用程序中使用Minio对象存储服务。以下是使用Minio Golang客户端的步骤: 1. 安装Minio Golang客户端包 ```go go get github.com/minio/minio-go/v7 ``` 2. 初始化Minio Golang客户端 ```go package main import ( "context" "fmt" "github.com/minio/minio-go/v7" "github.com/minio/minio-go/v7/pkg/credentials" ) func main() { // 初始化Minio客户端对象 minioClient, err := minio.New("play.min.io", &minio.Options{ Creds: credentials.NewStaticV4("Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG", ""), Secure: true, }) if err != nil { fmt.Println(err) return } // 使用minioClient操作对象存储服务 ... } ``` 3. 创建一个存储桶 ```go // 创建一个名为"test-bucket"的存储桶 err = minioClient.MakeBucket(context.Background(), "test-bucket", minio.MakeBucketOptions{}) if err != nil { fmt.Println(err) return } ``` 4. 上传文件到存储桶 ```go // 上传名为"test-object"的文件到存储桶 _, err = minioClient.FPutObject(context.Background(), "test-bucket", "test-object", "testfile.txt", minio.PutObjectOptions{}) if err != nil { fmt.Println(err) return } ``` 5. 下载存储桶中的文件 ```go // 下载名为"test-object"的文件到本地文件system err = minioClient.FGetObject(context.Background(), "test-bucket", "test-object", "/path/to/destination", minio.GetObjectOptions{}) if err != nil { fmt.Println(err) return } ``` 6. 列出存储桶中的所有对象 ```go objectsCh := make(chan minio.ObjectInfo) // 列出名为"test-bucket"的存储桶中的所有对象 go func() { defer close(objectsCh) for object := range minioClient.ListObjects(context.Background(), "test-bucket", minio.ListObjectsOptions{ Recursive: true, }) { if object.Err != nil { fmt.Println(object.Err) return } objectsCh <- object } }() for object := range objectsCh { fmt.Println(object.Key) } ``` 以上是使用Minio Golang客户端的基本步骤,您可以根据自己的实际需求进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值