Показать сообщение отдельно
  #2 (permalink)  
Старый 08.06.2008, 14:12
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

Очень нетипичная у вас задача, более того, если файл бинарный, то получить его в javascript и кодировать в base64, насколько я знаю, невозможно. (Не учитывая тот метод, который вы нашли в Firefox 3). Получается, что ответ на ваш вопрос - нет. Возможно, для IE можно попробовать работать через ActiveX компоненты, но я думаю, что стандартные настройки безопасности запретят получать локальные файлы напрямую в JavaScript.

Для передачи файлов на сервер обычно используется POST запроc. Так что единственным решением будет использование "проксимизации" через серверный скрипт:

посылается файл на сервер методом POST -> возвращается его base64 код -> в теле запроса из JavaScript отправляется на сервер. (Тройной траффик)

Или посылается на сервер файл методом POST вместе в xml с плейсхолдером в месте, где нужно вставить base64 код -> сервер отправляет запрос с файлом в теле xml через сокетное соединение.
Ответить с цитированием