Сообщения

Как загружать объекты на AWS S3 прямо из браузера без посредников.

Изображение
В этом туториале мы будем использовать Minio, но вместо минио вы можете использовать любой сервер поддерживающий S3 протокол. Обычно для загрузки пользовательских объектов используют AWS lambda в которую через POST запрос пользователи отправляют файлы, и на лямбде происходит авторизация запроса, и лямбда уже сама загружает пользовательский файл на AWS S3. Но такой подход очень неэфективный вить мы тратим много трафика для получения файла на лямбду, и иеще и на загрузку в S3.  Чтобы исправить эту проблему придумали presigned urls. Presigned urls это "подписанные ссылки", которые подписывает бекенд и отдаёт браузеру который может POST запросом загрузить файл который будет доступен в S3 хранилище. Сделано это было чтобы каждый человек из интернета не мог просто загрузить любой файл, а лишь только с разрешения вашего бекенда. Presigned urls очень схожи с JWT, они тоже подписываются через криптографические функции. Но чтобы работать с Presigned urls вам не обязательно полностью по