Как настроить Plupload правильно, чтобы он загружал файлы непосредственно на Amazon S3?
Как сделать загрузку Plupload прямо на Amazon S3?
Ответ 1
-
В дополнение к условиям для ведра, ключа и acl документ политики должен содержать правила для имени, имени файла и success_action_status. Например:
["starts-with", "$name", ""], ["starts-with", "$Filename", ""], ["starts-with", "$success_action_status", ""],
Filename
- это поле, которое бэкэнда Flash отправляет, но бэкэнд HTML5 этого не делает. -
Параметр
multipart
должен быть прав, но это значение по умолчанию в эти дни. -
Параметр
multipart_params
должен быть словарем со следующими полями:-
key
-
AWSAccessKeyId
-
acl = 'private'
-
policy
-
signature
-
success_action_status = '201'
Настройка
success_action_status
до 201 заставляет S3 возвращать XML-документ с кодом статуса HTTP 201. Это необходимо для работы бэкэнд Flash. (Flash-загрузка останавливается, когда ответ пуст, а код - 200 или 204. Это приводит к ошибке ввода-вывода, если ответ является перенаправлением.) -
-
S3 не понимает куски, поэтому удалите опцию
chunk_size
config. -
unique_names
может быть либо True, либо False, оба работают.
Ответ 2
В последнем выпуске Plupload включен иллюстративный пример, который показывает, как можно использовать Plupload для загрузки файлов на Amazon S3 с использованием Flash и SilverLight.
Вот свежий отчет: Загрузить на Amazon S3
Ответ 3
Если вы используете Rails 3, просмотрите мои проекты:
Пример проекта с использованием Rails 3, Flash и MooTools на основе FancyUploader для загрузки непосредственно на S3: https://github.com/iwasrobbed/Rails3-S3-Uploader-FancyUploader
Пример проекта с использованием Rails 3, Flash/Silverlight/GoogleGears/BrowserPlus и на основе JQuery для загрузки непосредственно на S3: https://github.com/iwasrobbed/Rails3-S3-Uploader-Plupload
Ответ 4
Я хочу заметить, что не забудьте загрузить crossdomain.xml на ваш хост s3, а также если у вас есть URL-адрес success_action_redirect, вам также нужно иметь файл crossdomain.xml в этом домене. Я провел 1 день, борясь с этой проблемой, и, наконец, нашел, что неправильно. Поэтому в следующий раз подумайте, как работает флеш внутри.
Надеюсь, я сэкономлю время для кого-то.
Ответ 5
Официальный учебник Plupload, гораздо более подробный, чем ответы здесь: https://github.com/moxiecode/plupload/wiki/Upload-to-Amazon-S3