Как отследить предварительную подпись в AWS S3 - PullRequest
0 голосов
/ 30 октября 2019

Мы предоставляем REST API для загрузки пользовательских файлов, в бэкэнде мы используем S3 Bucket для хранения пользовательских загрузок.

Поскольку у нашего REST API есть тайм-аут 30 секунд, пользователь может получить тайм-ауты в зависимости от размера файла и своей сети. .

Поэтому мы подумали о предоставлении ему S3 Pre-Sign URL s для загрузки, с помощью которого пользователь может загружать свои большие файлы с помощью вызовов AJAX из внешнего интерфейса или с помощью запланированного сценария внутреннего интерфейса.

Все выглядит хорошо, ноу нас нет никакой подсказки о предоставленных предварительных подписях s3: - попытался ли он загрузить или нет:

  • , если попытка была успешной или нет,
  • , если не удалось,в чем была ошибка (истек срок действия URL-адреса или что-то другое ...)

Мы можем узнать об успешном случае, выполнив поиск ключа объекта в нашей корзине. Но в случае сбоев у нас нет никакой подсказки.

Пожалуйста, дайте мне знать, если есть в любом случае, чтобы отслеживать доступ / загрузки предварительного подписи S3.

1 Ответ

0 голосов
/ 30 октября 2019

Вы не будете знать, когда используется предварительно подписанный URL-адрес, но есть еще несколько вариантов:

  • Вы можете настроить Событие Amazon S3 для запуска при новомфайл загружен в корзину. Это может вызвать функцию AWS Lambda, которая может обработать файл или, по крайней мере, сделать запись о том, что файл был загружен.
  • Вы можете использовать Регистрация доступа к серверу Amazon S3 для отслеживания доступа к файлу. ведро.
...