簡體   English   中英

golang S3 客戶端庫是否有獲取迭代器 function 來檢索 S3 存儲桶中的所有對象

[英]Does golang S3 client library has the get Iterator function to retrieve all the objects in S3 bucket

我正在嘗試使用 Golang 列出 S3 Bucket 中的所有對象,但是,我找到了 Golang

S3 列表 function 將僅返回 1000 個對象。

所以,在 PHP 中,我可以使用

$objects=S3->getIterator('ListObjects', array('Bucket' => $bucket,'Prefix'=>'test/'));

如果我迭代 $objects 中的 100X 個項目,它可以返回下一個 100x 個對象。 那么有沒有

Golang 中的機制(或迭代器函數),我還可以從中迭代接下來的 1000 個對象

迭代器?

謝謝

編輯:是的,他們這樣做。

var (
    sqsRegion string
)

func init() {
    if err := godotenv.Load(); err != nil {
        log.Fatalf("Error loading .env file: %s", err.Error())
    }

    sqsRegion = os.Getenv("AWS_REGION")
}

func main() {

    sess := session.New(&aws.Config{Region: aws.String(sqsRegion)})

    svc := s3.New(sess)

    resp, err := svc.ListObjects(&s3.ListObjectsInput{
        Bucket: aws.String("yourbucket"),
    })

    if err != nil {
        log.Fatalln(err.Error())
    }

    for _, key := range resp.Contents {
        log.Println(*key.Key)
    }

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM