#javascript #excel #amazon-web-services #amazon-s3
#JavaScript #excel #Amazon-веб-сервисы #amazon-s3
Вопрос:
У меня есть URL-адрес Amazon S3, который передается мне из внешней службы в формате:
Я мало работал с S3, но, насколько я понимаю, это URL-адрес, подписанный пользователем — я могу вставить его в свой браузер, и файл Excel загрузится.
Как я могу загрузить этот файл напрямую с помощью javascript (на интерфейсе, поскольку в моей системе не запущен узел)?
Я попытался сгенерировать элемент тега с помощью click — однако все мои файлы загружаются как поврежденные. Я могу загрузить файл напрямую, вставив ссылку в свой браузер, и он автоматически инициирует загрузку.
Любая помощь будет оценена.
Я пробовал следующее, но он загружает файл с ошибкой:
var link = document.createElement('a');
link.href = url;
link.download = 'foo.xlsx';
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
Ответ №1:
Вам не нужен JS для принудительной загрузки при нажатии на ссылку; вы можете сделать это с помощью простого HTML. И не имеет значения, что источником является URL-адрес с подписью S3 — он работает с любым URL-адресом.
<a href=“Foo.xlsx” download>click to download</a>
должен сделать это за вас.
Взгляните на https://www.w3schools.com/howto/howto_html_download_link.asp для матрицы поддержки браузера.
Комментарии:
1. Спасибо, Том, за вашу помощь.
2. Надеюсь, это сработало. Если это так, вы можете пометить мой ответ как принятый.