#ruby-on-rails #ajax #file-upload
#ruby-on-rails #ajax #загрузка файла
Вопрос:
Я искал способ отслеживать информацию о загрузке файлов без использования flash, но, вероятно, с использованием ajax, я полагаю. Я хочу отслеживать скорость и процент завершенной загрузки файлов.
Знаете ли вы какой-либо ресурс, который описывает, как это сделать, или чему я должен следовать, чтобы это сделать?
Ответ №1:
В мире до HTML5, я полагаю, для этого требуется поддержка веб-сервера. В прошлом я успешно использовал этот модуль Apache:
http://piotrsarnacki.com/2008/06/18/upload-progress-bar-with-mod_passenger-and-apache/
Комментарии:
1. ну, это наверняка можно сделать с помощью ajax, я просто не знаю, как это делается в Rails. Но этот источник очень хорош, спасибо 🙂
Ответ №2:
Единственный способ без flash — это делать это на сервере. Суть в том:
- Запустите загрузку файла
- Откройте потоковое соединение с сервером
- Попросите сервер прочитать заголовки post, чтобы сообщить вам, какого размера будет файл
- Попросите сервер повторно проверить размер файла (обычно в / tmp), чтобы увидеть, насколько он полон
- передавать % done обратно клиенту
Я делал это раньше на других языках, но никогда на ruby, поэтому не уверен в проекте, который это делал, извините.
Комментарии:
1. Спасибо, но я это уже знаю. Вот почему я упоминаю ajax. Я ищу, как это сделать.