2016-10-26 4 views
1

Mit dem AWS Golong SDK versuche ich, ein Ablaufdatum für einige der Objekte festzulegen, die ich hochlade. Ich bin mir ziemlich sicher, dass die Kopfzeile korrekt eingestellt ist, aber wenn Sie sich in S3 anmelden und die Eigenschaften des neuen Objekts anzeigen, scheint es kein Ablaufdatum zu haben.S3-Objekte laufen nicht mit dem Golang-SDK ab

Unten ist ein Ausschnitt aus wie ich das Hochladen von Objekten

exp := time.Now() 
exp = exp.Add(time.Hour * 24) 

svc := s3.New(session.New(config)) 
_, err = svc.PutObject(&s3.PutObjectInput{ 
    Bucket:  aws.String("MyBucketName"), 
    Key:   aws.String("201700689.zip"), 
    Body:   fileBytes, 
    ContentLength: aws.Int64(size), 
    ContentType: aws.String(fileType), 
    Expires:  &exp, 
}) 

Und hier ist das, was ich sehe, wenn sie in die Website einloggen enter image description here

Jede Idee, was hier vor sich geht? Dank

Antwort

4

Nun, Expires ist nur das falsche Feld:

// Das Datum und die Uhrzeit, zu der das Objekt nicht mehr zwischenspeicherbar ist.

Was Sie wollen, ist Object Expiration, die als eine Bucket-Regel und nicht pro Objekt festgelegt werden kann.

Grundsätzlich fügen Sie einen Lifecycle-Regel (auf den Eimer Eigenschaften) festgelegt wird:

Jede Regel hat folgende Attribute:

Präfix - Anfangsteil des Schlüsselnamen (zB logs /) oder der gesamte Schlüsselname. Jedes Objekt im Bucket mit einem übereinstimmenden Präfix unterliegt dieser Ablaufregel. Ein leeres Präfix stimmt mit allen Objekten im Bucket überein.

Status - Entweder Aktiviert oder Deaktiviert. Sie können festlegen, dass Regeln von Zeit zu Zeit aktiviert werden, um das Löschen oder die Garbage-Collection in Ihren Buckets durchzuführen, und die Regeln zu anderen Zeiten deaktiviert lassen.

Ablauf - Gibt einen Ablaufzeitraum für die Objekte an, die der Regel unterliegen, als Anzahl von Tagen ab dem Erstellungsdatum des Objekts.

Id - Optional, gibt der Regel einen Namen.

Diese Regel wird dann täglich ausgewertet und alle abgelaufenen Objekte werden entfernt.

Eine ausführlichere Erklärung finden Sie unter https://aws.amazon.com/blogs/aws/amazon-s3-object-expiration/.

+0

Sehr geschätzt. Hasse es, der Typ zu sein, der die Dokumente nicht gelesen hat – tier1