У меня следующая ситуация, я храню изображения в S3, каждое изображение находится в своей собственной папке, что-то вроде этого:
https://s3.eu-central-9.amazonaws.com/my-app/6a68045c14754f3c0b22d206053ff67406217981043a24ad06d3789b67024747125b8900ee8a1e9af2220a5c6558946136cd82807d0666b4678406337239530f/1535565432.jpg
Я использую AWS SDK, я попробовал два подхода:
- Проходя полный путь
- Передача только пути после my-app
С обоими я получаю ответ, похожий на этот:
{ Deleted: [ { Key: '/1b37c7ad1d9f021e000813b9d16b8ae2b24e6ed6f3c4430bfb8196ca63eec57eafe5bf2ee8993a7846faca0c95cec587395d6639f2aeb73447fb9429b673f0ca/1535564545.jpg' } ],
Errors: [] }
Но если я пойду и проверю свое ведро, файл и папка на месте, не могу понять почему, какие-либо предложения?
Я начинаю думать, что мне просто нужно пропустить создание папки и добавить изображения в корень корзины.
[UPDATE]
Параметры для метода S3.deleteObjects:
{
Bucket: 'my-app',
Delete: {
Objects: [{
Key: '/c506c3b842e1729c41542b7867b14a5eefb4159336105392ed99d250153aeea515e39986f850e3c8674d082b760b7e0d3ab5edf1c7c3e5d89ea7e71a399c0e5e/1535610612.jpg'
}]
}
}
Я использую безсерверный фреймворк, с его помощью создается корзина - может быть, это как-то связано с этим? Единственная ошибка, которую я получил при сборке, - это то, что моя лямбда-функция, которая выполняет удаление, не имела разрешения на это, как только я добавила s3: DeleteObject, меня встретили с этим.