Передача файловых путей из Flash в JavaScript для загрузки? - PullRequest
0 голосов
/ 29 сентября 2010

Прежде всего, мой вопрос: возможно ли передать имена файлов из запущенного приложения Flash, единственная цель которого - включить выбор нескольких файлов, в приложение JavaScript, которое обрабатывает загрузку всех файлов на сервер?

Я изучил различные решения для загрузки Flash (например, SWFUpload, Uploadify и т. Д.), И ни одно из них не отвечает моим потребностям.Я хочу простое в реализации решение (например, Uploadify), которое также позволяет мне указывать различные части HTTP-запроса.

Причина, по которой мне это нужно, заключается в том, что в моей форме загрузки используются файлы cookie сеанса (для аутентификации пользователя) и токен CSRF, которые передаются на сервер при загрузке файлов.

Технически возможно передать файлы(+ пути) к приложению JavaScript, которое затем обрабатывает загрузку?

Спасибо, FMD

1 Ответ

1 голос
/ 29 сентября 2010

Извините, но нет, невозможно передать имена файлов в JavaScript из Flash, однако вы можете передать идентификатор сеанса во Flash.

Если вы используете PHP (я не говорюВы, ваш серверный язык может иметь аналогичные функции), вы можете восстановить сеанс:

session_id($_POST['ses']);
session_start();

Причина, по которой вы не можете передать имена файлов в JavaScript (или установить его по сценарию в первомместо) заключается в том, что это будет серьезной проблемой безопасности, рассмотрите следующее:

var uploader = document.getElementById('id_of_input_type_file');
uploader.value = 'c:\Users\Administrator\Documents\commonBankKeyFile.ebjkeystore';
document.getElementById('formId').submit();

... И вот, я только что получил ваши банковские учетные данные, когда вы посетили мою страницу, никакой фишинг не требуется.

...