Для AWS SDK для Java библиотеки (используемой cognitect-labs/aws-api), если я удалю последний объект в «каталоге», я буду ожидать, что останется пустой каталог.
cognitect-labs/aws-api
https://aws.amazon.com/sdk-for-java/ https://github.com/cognitect-labs/aws-api
Вместо этого DeleteObject также удаляет каталог (не то, что я хочу). Есть ли способ избежать этого? https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
(require '[cognitect.aws.client.api :as aws]) ;; Copying works fine (aws/invoke aws/client {:op :CopyObject :request {:Bucket "bucket" :CopySource "bucket/dirA/f1" :Key "dirB/f1"}}) ;; However, deleting removes f1 and dirA (if dirA is empty) (aws/invoke aws/client {:op :DeleteObject :request {:Bucket "bucket" :Key "dirA/f1"}})
Это невозможно, потому что папки, которые вы видите в S3, на самом деле не являются папками. Это организовано как папки для легкого. Но это не совсем папки.