Папки на самом деле не существуют в Amazon S3.
Например, вы можете создать объект с именем invoices/foo.txt
, и он будет работать нормально, даже если папка invoices
отсутствует. Папка invoices
волшебным образом появится в консоли, а также волшебным образом исчезнет, когда в ней больше не будет объектов.
Поэтому, один из вариантов - просто , не беспокойтесь о папках .
Если вы делаете при создании папки в консоли управления S3, создается объект нулевой длины с ключом, равным имени папки . Это заставляет пустую папку появляться, даже если она на самом деле не существует.
Чтобы предотвратить удаление «папки», просто не удаляйте этот объект нулевой длины с тем же самым имя в качестве папки. Ваш код может либо проверить длину объекта, либо проверить, совпадает ли его ключ с именем папки (с его полным путем). Если это так, не удаляйте его.