Загрузить на Amazon S3 с помощью Codeigniter - PullRequest
2 голосов
/ 07 октября 2011

Я занимаюсь разработкой API с использованием Codeigniter и хочу, чтобы пользователи могли загружать изображения в мою учетную запись Amazon S3. Я использую Phils Restserver и Библиотека Донована Шёнкнехта S3 (для Ci).

Он отлично работает, чтобы загрузить локальный файл в Amazon, но как я могу получить файл изображения отправлено по обычной внешней форме?

Используя встроенную библиотеку загрузки Ci, она работает нормально, но затем мне нужно хранить файлы локально на моем собственном сервере и я хочу их на S3. Можно ли их объединить?

Я думаю, что я спрашиваю, как я могу "получить" файл изображения, который отправляется на контроллер и изменить его размер, а затем загрузить его на S3?

Возможно, мне нужно временно сохранить его на локальном сервере, загрузить на S3 и затем удалить с локального сервера?

Это мой модал "загрузки":

// Load the s3 library

$this->load->library('S3');

// Make the upload

if ($this->s3->putObjectFile($args['local'], "siticdev", $args['remote'], S3::ACL_PUBLIC_READ)) {

// Handle success

return TRUE;

} else {

// Handle failure

return FALSE;

}

Благодарен за все комментарии!

Ответы [ 2 ]

3 голосов
/ 07 октября 2011

Если я правильно вас понимаю, вы хотите, чтобы пользователь загрузил изображение с помощью формы, изменило его размер, а затем передало его в Amazon S3.

Вам придется хранить файл локально (хотя бы в течение нескольких секунд), чтобы изменить его размер с помощью CI. После изменения его размера вы можете перенести его в Amazon S3. При успешном обратном вызове с передачи вы можете удалить изображение с вашего сервера.

1 голос
/ 23 августа 2012

Вы обязательно должны проверить библиотеку CI S3."Искра" доступна здесь - http://getsparks.org/packages/amazon-s3/versions/HEAD/show

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...