Tôi có đoạn code làm việc sau để xóa một đối tượng từ Amazon s3đối tượng Xóa ở s3 sử dụng ký tự đại diện phù hợp với
params := &s3.DeleteObjectInput{
Bucket: aws.String("Bucketname"),
Key : aws.String("ObjectKey"),
}
s3Conn.DeleteObjects(params)
Nhưng những gì tôi muốn làm là để xóa tất cả các file dưới thư mục sử dụng ký tự đại diện **. Tôi biết amazon s3 không xử lý "x/y/file.jpg" như một thư mục y bên trong x nhưng những gì tôi muốn đạt được là bằng cách đề cập đến "x/y *" xóa tất cả các đối tượng tiếp theo có cùng tiền tố. Cố gắng amazon multi object delete
params := &s3.DeleteObjectsInput{
Bucket: aws.String("BucketName"),
Delete: &s3.Delete{
Objects: []*s3.ObjectIdentifier {
{
Key : aws.String("x/y/.*"),
},
},
},
}
result , err := s3Conn.DeleteObjects(params)
Tôi biết trong php nó có thể được thực hiện dễ dàng bằng cách P3-> delete_all_objects theo this answer. Có thể hành động tương tự trong GOlang không.
Cảm ơn bạn đã nêu ra sự lôi cuốn với aws-sdk – Itachi