sal*_*ar3 1 amazon-s3 go amazon-web-services
我在 s3 上有大约 300K 个对象,我需要获取所有这些对象,根据文档,它声明只会返回前 1000 个对象。我怎样才能使用 Go 来完成这个任务?非常感谢任何帮助。
// Get the list of items
resp, err := s3svc.ListObjectsV2(&s3.ListObjectsV2Input{
Bucket: aws.String(Bucket),
Prefix: aws.String(Prefix),
})
if err != nil {
exitErrorf("Unable to list items in bucket %q, %v", Bucket, err)
}
for _, item := range resp.Contents {
// Store data
}
Run Code Online (Sandbox Code Playgroud)
Cer*_*món 10
使用延续标记迭代所有对象:
var continuationToken *string
for {
resp, err := u.s3.ListObjectsV2(&s3.ListObjectsV2Input{
Bucket: aws.String(Bucket),
Prefix: aws.String(Prefix),
ContinuationToken: continuationToken,
})
if err != nil {
exitErrorf("Unable to list items in bucket %q, %v", Bucket, err)
}
for _, item := range resp.Contents {
// process each object.
}
if !aws.BoolValue(resp.IsTruncated) {
break
}
continuationToken = resp.NextContinuationToken
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2254 次 |
| 最近记录: |