Рекомендуемый способ проверки размера файла при загрузке

Я работаю над веб-приложением, которое поддерживает загрузку файлов. Я уже знаком с проверкой размера на стороне сервера, но я хотел проверить размер файла на стороне клиента.

Я знаю, что это ограничение браузера, что мы не можем получить доступ к свойствам файла по соображениям безопасности. Итак, я пробовал как swfupload, так и компонент uploadify. Оба хороши и удовлетворяют потребностям.

Но оба ограничения зависят от флэш-памяти, поэтому, если мой конечный пользователь не установит флэш-память, у меня возникнут проблемы. Другое дело - попросить их установить flash, но это веб-портал и огромная база пользователей. Так что мне не нравится идея просить их установить flash.

Сегодня я столкнулся с функцией загрузки файлов в Gmail. И протестировал это в браузере (IE) без установки флэш-памяти. То, что я нашел, было интересным. Если вы загружаете большой файл, они делают обратную передачу и сразу же возвращают сообщение, что размер файла слишком велик.

Как это возможно, как они могут узнать размер файла без загрузки всего содержимого.? Я считаю, что это должно быть сделано путем чтения информации заголовка HTTP. я прав?

Итак, это именно та функциональность, которую я хотел реализовать. Если флеш-память уже установлена, я могу использовать uploadify, чтобы проверить размер, в противном случае я могу реализовать технику-никогда-никогда-не-слышанную-используемую-Google.

Может кто-нибудь порекомендовать мне, как это сделать?

Кто-нибудь сталкивался с подобными проблемами раньше, что вы сделали ??

Обновление:

Загрузка Gmail с установленной флэш-памятью в FF

alt text

без флэш-памяти в IE

alt text

12
задан RameshVel 17 November 2010 в 13:34
поделиться