在Go语言中,可以使用AWS SDK for Go来操作AWS S3服务。要在已有的存储桶中创建文件夹,可以使用PutObject方法,并指定存储对象的Key。

以下是一个示例代码,展示如何在已有的存储桶中创建文件夹:

package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	// 创建AWS会话
	sess := session.Must(session.NewSessionWithOptions(session.Options{
		SharedConfigState: session.SharedConfigEnable,
	}))

	// 创建S3服务客户端
	svc := s3.New(sess)

	// 存储桶名称
	bucketName := "your-bucket-name"

	// 文件夹路径
	folderPath := "your-folder-path/"

	// 在存储桶中创建文件夹
	_, err := svc.PutObject(&s3.PutObjectInput{
		Bucket: aws.String(bucketName),
		Key:    aws.String(folderPath),
	})

	if err != nil {
		fmt.Println("Error creating folder:", err)
		return
	}

	fmt.Println("Folder created successfully")
}

在上述代码中,需要将your-bucket-name替换为实际的存储桶名称,将your-folder-path/替换为实际的文件夹路径。注意,在AWS S3中,文件夹本质上是一个特殊的对象,因此将文件夹路径作为Key传递给PutObject方法即可创建文件夹。

另外,确保你已经正确配置了AWS SDK的认证凭证,例如使用~/.aws/credentials文件或环境变量来指定访问密钥和密钥ID。

Go语言AWS S3: 在现有存储桶中创建文件夹 (无需存储桶名+endpoint)

原文地址: https://www.cveoy.top/t/topic/pbMT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录