2016-09-22 1 views
3

Wie erhalte ich die Liste der Objekte aus einem Unterordner eines Amazon S3-Buckets mithilfe von Golang?Wie bekomme ich eine Liste von Objekten aus dem Unterordner von Amazon S3 Bucket mit Golang?

Ich habe versucht:

svc := s3.New(session.New(), &aws.Config{Region: aws.String("us-east-1")}) 

params := &s3.ListObjectsInput{ 
    Bucket: aws.String("bucket"), 
} 

resp, _ := svc.ListObjects(params) 
for _, key := range resp.Contents { 
    fmt.Println(*key.Key) 
} 

ich die Liste aller Objekte in dem Eimer bekam, aber ich brauche nur die Liste der Objekte in einem Unterordner.

Antwort

3

hinzufügen Prefix-Parameter zu erhalten

params := &s3.ListObjectsInput { 
    Bucket: aws.String("bucket"), 
    Prefix: aws.String("root/subfolder"), 
} 

werden Objekte aus Unterordner Liste/

1

, um die Ordner zuzugreifen (sie sind nicht wirklich Ordner, als s3 ein Objektspeicher ist) Sie haben das Präfix zur Verfügung zu stellen und Delimiter Attribute ListObjectsInput sagen, dass Sie s3: // foo/bar Sie die Subobjekte können bieten die "foo/bar" prefix mit dem '/' Begrenzer alle in params

Verwandte Themen