Вы можете использовать Подписанные URL из AWS S3. Это вернет вам ссылку, которую можно использовать для прямой загрузки вашего файла на S3 без прохождения через ваш сервер. Для обработки вашего файла вы можете использовать AWS Функции Lamda, чтобы ваш сервер не получал никаких накладных расходов на обработку файлов.
Например, с NodeJS
const url = await s3.getSignedUrlPromise('putObject', {
Bucket: 'YOUR_BUCKET',
ContentType: 'YOUR_CONTENT_TYPE',
ACL: 'public',
Key: 'path/to/yourfile'
})
Приведенный выше пример вернет вас URL-адрес, который можно отправить пользователю, чтобы пользователь мог напрямую загрузить файл из приложения браузера / android в корзину S3. Вы можете просто сделать запрос PUT на возвращенный URL из вашего Android приложения.
Примечание: Измените ACL в соответствии с вашими потребностями, в примере файл общедоступен
NodeJS API