2010-08-18 2 views
0

У меня есть сценарий, когда мне нужно загрузить zip-файл при нажатии кнопки, я не могу использовать для этого формы, поэтому мне нужно обработать его либо путем вызова сервлета с использованием документа. location.href или через AJAX, после загрузки файла мне нужно извлечь его на сервер. Так что кто-то может рассказать мне, какой будет возможный подход для этого.Загрузка zip-файла на сервер с использованием сервлетов

ответ

1

Javascript не может получить доступ к локальной файловой системе на диске или изменить поле <input type="file">, поэтому здесь останавливается. Это очень хорошее ограничение безопасности, в противном случае это было бы огромным дыром в безопасности (иначе можно было бы создать невидимую форму с предварительно заполненным файловым полем, например c:/passwords.txt, и отправить ее во время загрузки окна).

Позвольте пользователю выбрать файл для загрузки или вставить небольшое клиентское приложение на веб-страницу (например, Applet, Silverlight и т. Д.). Для получения их цифровой подписи потребуется всего $$$, чтобы вы могли запускать ее на клиенте, чтобы клиент не столкнулся с диалоговыми окнами безопасности, поскольку он пытается незаметно обращаться к локальной файловой системе на диске.


Для части экстракционной загрузки файла, я горячо рекомендую Apache Commons FileUpload. Также см. this answer с примерами кода.

Смежные вопросы