Загрузка Silverlight Ftp - PullRequest
       11

Загрузка Silverlight Ftp

3 голосов
/ 15 июля 2009

Я работаю над попыткой FTP-файла на сервер через приложение silverlight. Где место для загрузки файла в файловой системе сервера, находится вне области песочницы для веб-сервера. В этом случае корень веб-сервера существует в «C: \ test \ www \», а место для загрузки файла будет в «C: \ User \ Uploads». В этом сценарии я не уверен, будет ли работать POST Http (разве это не использует корень веб-сервера). Мне просто нужно загрузить выбранный пользователем файл в другое место, которое может существовать вне песочницы. С Silverlight, я думаю, сокеты - мой последний вариант, основанный на ограниченном диапазоне портов для Silverlight, равном 4502-4532. Могу ли я сделать это, используя WebClient и HTTP POST? Могу ли я сделать FTP-соединение через Silverlight или JavaScript?

Ответы [ 4 ]

2 голосов
/ 05 августа 2009

Это интересный сценарий, поскольку похоже, что вы делаете все это на одной машине (и клиент, и сервер). Я отвечаю на неопределенный оригинальный вопрос и хотел бы получить дополнительные данные, чтобы помочь ответить на этот вопрос полностью.

Сама по себе загрузка по FTP не поддерживается Silverlight, но концепция загрузки файла заключается в потоке данных HTTP.

Если вы хотите выполнить HTTP-загрузку с клиентского компьютера на сервер: вы можете использовать OpenFileDialog в Silverlight 2 и 3, чтобы прочитать эти данные, а затем использовать WebClient для их загрузки.

Если вы хотите выполнить загрузку с того, что ваш веб-сервер может отправить на клиентский компьютер, вам потребуется использовать Silverlight 3 или более новую версию, которая имеет элемент управления SaveFileDialog .

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

Надеюсь, это поможет!

0 голосов
/ 30 августа 2012

Тем временем, назовите его Silverlight 5, Sockets получил обновление: с ClientAccessPolicy.xml увеличился диапазон портов и доступен режим повышенного доверия в браузере.

Поэтому я создал sharpLightFtp , чтобы включить элементарный Ftp.

0 голосов
/ 11 апреля 2010

Пока ftp-сервер находится на том же хосте, что и приложение silverlight, вы можете использовать сокеты и кодировать свой собственный ftp-клиент, это не очень сложно, и есть множество примеров.

0 голосов
/ 15 июля 2009

Предполагая, что ваш сервер основан на ASP.NET, я бы использовал простой POST WebClient в обработчике .ashx. Попросите, чтобы обработчик записал тело сообщения в файл в "C: \ User \ Uploads".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...