Как я могу предоставить списки каталогов для тех, кто просматривает мой статический веб-сайт на базе Amazon S3?
У меня есть учетная запись Amazon S3, где я хотел бы хранить несколько каталогов файлов.
Я хотел бы, чтобы посетитель этого сайта мог видеть и загружать файлы и папки, которые я разместил там.
Эти файлы и папки будут меняться регулярно, и я бы предпочел не переписывать любой html каждый раз, когда добавлял или удалял файлы.
Как я могу организовать просмотр зрителям моего сайта с простым списком файлов/папок?
Ответы
Ответ 1
Вы можете использовать Javascript для отображения файлов.
Вот решение, предоставленное Amazon:
http://aws.amazon.com/code/Amazon-S3/1713
Вы размещаете list.html в каждом каталоге, который вы хотите перечислить.
Я сделал свой собственный файл листинга, который предоставляет сворачиваемое древовидное представление:
https://github.com/phatmann/jS3Tree/blob/master/index.html
Ни один из этих файлов не будет работать, если вы используете веб-сайт S3.
Ответ 2
Я создал простой бит JS, который создает индекс каталога в стиле HTML, который будет соответствовать тому, что вы ищете: https://github.com/rgrp/s3-bucket-listing
Вы можете установить это либо прямо в свой ведро s3, либо на отдельный веб-сайт (благодаря тому, что S3 REST API поддерживает CORS!). README имеет полные инструкции по этому поводу: https://github.com/rgrp/s3-bucket-listing
Ответ 3
вы должны использовать Amazon S3 API, чтобы перечислить ведра и файлы внутри них
ведро может представлять папку (будет проще, чем использовать префикс для имени файла)
после создания ваших ковшей и загрузки файлов к ним
вы можете представить ведра на странице Список всех моих ковшей request
после того, как пользователь нажмет на указанное ведро, вы можете получить файлы в нем с помощью List Bucket request
другой последний нажмите на файл, чтобы создать URL-адрес для объекта, чтобы пользователь мог загрузить его, не тратя впустую свою пропускную способность.
вы можете найти множество реализаций для амазонки s3 api здесь