Можно ли получить статус прогресса при загрузке больших файлов в облачный с моего сервера

Можно ли получить статус прогресса при загрузке больших файлов в облачный с моего сервера?

Эта проблема:

У нас есть конечная точка API, где мы отправляем файл на наш сервер, затем наш сервер выполняет некоторые проверки и отправляет его в облачный сервис. Я пытаюсь найти способ показать правильный статус прогресса. Что я пробовал это:

$stream = file_get_contents('php://input');
try{
$resource = \Cloudinary\Uploader::upload($stream);
$this->_resource = $resource;
} catch( Exception $exp ){
echo "<pre>".print_r($exp)."</pre>";
return false;
}

но это бросает облачное исключение, что файл не может быть прочитан.

1

Решение

Вы можете обратиться к этому коду в примере проекта Cloudinary PHP —
https://github.com/cloudinary/cloudinary_php/blob/master/samples/PhotoAlbum/upload.php#L113
И здесь вы можете увидеть, как на самом деле реализован индикатор выполнения (в примере проекта Cloudinary GEM) — https://github.com/cloudinary/cloudinary_gem/blob/master/samples/photo_album/app/views/photos/new_direct.html.erb#L71

0

Другие решения

Других решений пока нет …