Разрешение пользователю возобновить загрузку с другой подписанной ссылки s3, которая имеет тот же ETag, что и частично загруженный файл. - PullRequest
0 голосов
/ 13 ноября 2018

Я не уверен, возможно ли это, но в основном у меня есть веб-приложение, которое позволяет пользователям загружать большие отдельные файлы через браузер, щелкая элемент пользовательского интерфейса, который перенаправляет их на предварительно подписанный URL-адрес S3. Затем загрузка будет осуществляться между браузером пользователя и S3. Проблема этого процесса заключается в том, что загрузка может быть довольно большой (порядка сотен ГБ), поэтому прерывание соединения может быть проблематичным. Когда пользователь пытается возобновить работу, срок действия подписанной ссылки, на которую мы перенаправили браузер, вероятно, истек. Я хотел бы избежать увеличения даты истечения срока действия подписанного URL из соображений безопасности, поэтому я изучал, как поддержать возобновляемую загрузку. Пример использования из документации mozilla по условным запросам - это почти то, что мне нужно. Дорожный блок, с которым я сталкиваюсь, заключается в том, как проверить, была ли загрузка ранее запущена на стороне клиента. Я бы хотел, чтобы пользователи могли нажимать кнопку, которая перенаправляет их на ссылку S3, и проверять наличие частично завершенных загрузок (и знать, сколько байт было загружено), а затем просто отправлять HTTP-запрос с Заголовок If-Range для перезапуска загрузки в браузере с другой ссылки S3 (с тем же значением ETag). Есть ли где-нибудь API или пример некоторого Javascript, который позволяет браузеру опосредовать такой запрос?

...