Go语言AWS S3: 在现有存储桶中创建文件夹 (无需存储桶名+endpoint)
在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。
原文地址: https://www.cveoy.top/t/topic/pbMT 著作权归作者所有。请勿转载和采集!