Опрос сервера загрузки файлов с индикатором выполнения

#jquery #file #upload #progress-bar

#jquery #файл #загрузка #индикатор выполнения

Вопрос:

Это не дубликат тех вопросов, которые задают, как загрузить файл и отобразить индикатор выполнения. Мое понимание основ:

  1. У нас есть форма, которая отправляет заданный входной файл по заданному URL.
  2. Как только нажата кнопка отправки, мы устанавливаем интервал для запуска метода Javascript каждую секунду, который использует AJAX для опроса сервера, чтобы получить статус этой загрузки.

Единственная дилемма для меня здесь в том, что я попробовал этот метод, но когда я смотрю на консоль FireBug, я вижу все эти вызовы jQuery AJAX. Я видел реализацию других людей, где вы ничего не видите в FireBug> Net> XHR.

У кого-нибудь есть идеи, как это реализовать?

Любые советы будут с благодарностью.

Приветствия, Мош

PS: Просто чтобы подчеркнуть, я не заинтересован в том, чтобы делать это с помощью Flash.

Комментарии:

1. Как вы думаете, кто-нибудь действительно реализовал это?

2. Какой язык программирования вы используете? Например, в PHP есть несколько опций, но это не поможет вам, когда вы используете ASP 😉

3. Вы на самом деле спрашиваете: как скрыть запросы Ajax с панели консоли ?

Ответ №1:

Не так просто, как кажется

Я думаю, что это потребует некоторого низкоуровневого программирования веб-сервера, потому что файлы обрабатываются (загружаются) до выполнения вашего кода. Это просто означает, что вы не имеете представления о внутреннем процессе загрузки файлов веб-сервера, чтобы опросить / исследовать его…

Если ваш сценарий действительно должен работать как:

  1. выберите файл
  2. отправьте его (который начнет загрузку)
  3. Ajax-опрос

тогда у вас возникнет несколько проблем:

  • если предполагается, что ваши Ajax-запросы выполняются с одной и той же страницы, это не сработает, поскольку страница уже выгружена (форма уже отправляется), это означает, что скрипты, вероятно, остановлены.
  • если у вас есть форма с загрузкой файла в другом iframe и загрузкой опроса с родительской страницы, вам придется реализовать часть низкоуровневого серверного кода, чтобы обеспечить то, что я выделил выше.

Плагины на стороне клиента

Вот почему это намного проще сделать на стороне клиента, используя плагины, такие как Uploadify, которые также могут использовать Flash для получения информации о ходе загрузки на сервер.

Ответ №2:

просто :

http://www.uploadify.com/

Ответ №3:

Возможно, эта страница может вам помочь: плагин jquery ajax uploader с индикатором выполнения. Или вы можете самостоятельно поискать альтернативу.

Ответ №4:

Похоже, на самом деле это несколько вопросов в одном.

  • Одним из улучшений, которое я могу предложить, является использование сокета.библиотека ввода-вывода, она использует websockets и резервные копии для длительного опроса через XHR или через Flash. Это, по крайней мере, обеспечит структурированный способ минимизации накладных расходов на опрос.

  • Когда дело доходит до «скрытых запросов», они, вероятно, используют другой метод, чем XHR, если вы не видите XHR, они, вероятно, не выполняют XHR. (Это вроде очевидно)