我正在尝试使用Golang列出S3 Bucket中的所有对象,但是,我找到了Golang
S3 List函数只返回1000个对象。
所以,在PHP中,我可以使用
$ objects = S3-> getIterator('ListObjects',array('Bucket'=> $ bucket,'Prefix'=>'test /'));
如果我迭代$ objects中的100X项,它可以返回下一个100x对象。那有什么
Golang中的机制(或迭代器函数),我也可以从
迭代接下来的1000个对象迭代器?
谢谢
答案 0 :(得分:2)
编辑:是的,他们这样做。
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)
}
}