Я заметил что новая поддержка объектов XMLHttpRequest 'onprogress' событие в Firefox. Действительно ли возможно использовать часть нового API Файла HTML5 для получения индикатора выполнения загрузки без каких-либо требуемых модификаций серверной стороны?
Я в принципе считаю, что да, хотя я еще не пробовал.
Проблема будет в том, что XMLHttpRequest # send ()
принимает строку Unicode и кодирует ее как UTF-8. Это не дает вам возможности отправлять чистый двоичный файл, и большинство двоичных файлов, таких как изображения, не могут быть действительными последовательностями UTF-8.
Так что, вероятно, вы будете использовать то, что в спецификации FileAPI называется «двоичной строкой» (байты обрабатываются как ISO-8859-1, поэтому каждый charCodeAt
соответствует байту), перекодированный в UTF-8. . Это будет примерно на 50% больше, чем загрузка простого файла. Стоит ли медленная загрузка, чтобы получить отчет о ходе выполнения?
(Боже, если бы только у браузеров был лучший пользовательский интерфейс, показывающий, как идет загрузка, ни один из бесконечных сценариев / Flash / Java / ActiveX ерунды никогда бы не понадобился . Да ладно, производители браузеров, неужели это красивое всплывающее окно с большой информацией с индикатором выполнения, о котором не стоит просить?)
Да, теоретически, хотя мне пришлось бы усомниться в точности, поскольку скорость Интернета обычно колеблется ( тем более, если вы не подключены). Вероятно, он будет много прыгать.
Опять же, что такое точный индикатор выполнения? Я бы хотел увидеть один в Windows, прежде чем увижу его в Интернете!