Задача: При попытке загрузить файл с использованием Amazon S3 API получил ошибку
Your proposed upload is smaller than the minimum allowed size
Инструменты: С#, AWSSDK.S3 package
Решение: Код выгрузки части файла выглядит следующим образом:
...
await s3Client.UploadPartAsync(new UploadPartRequest
{
Key = key,
BucketName = bucketName,
UploadId = uploadId,
InputStream = stream,
PartNumber = partNumber
}
,cancellationToken);
...
Code language: JavaScript (javascript)
Как оказалось, если выгружать часть файла, тогда есть ограничения на размер всех частей, кроме последней, и оно составляет 5Мб. В моем случае размер был меньше и в результате я получил следующее сообщение об ошибке:
Your proposed upload is smaller than the minimum allowed size
В документации к Amazon S3 Api — CompleteMultipartUpload написано следующее:
- Error code: EntityTooSmall
- Description: Your proposed upload is smaller than the minimum allowed object size. Each part must be at least 5 MB in size, except the last part.
- 400 Bad Request
Так что решение — использовать блоки 5 Мб и больше для выгрузки частей файла