2014-08-16 1 views
0

Из командной строки можно успешно подключиться через FTP к моему хозяину, используя либозапрос FtpWebRequest является запуск формата Invalid URI

ftp.domain.com or domain.com 

C:\Users\Aaron>ftp 
ftp> open 
To domain.com 
Connected to domain.com. 
220 FTP Server ready. 
User (domain.com:(none)): Login failed. 
ftp> close 
221 Goodbye. 
ftp> open 
To ftp.domain.com 
Connected to ftp.domain.com. 
220 FTP Server ready. 
User (ftp.domain.com:(none)): Login failed. 
ftp> close 
221 Goodbye. 
ftp> quit 

Я спасся ввода пароля выше и извлечено домен, но он по-прежнему показывает для каждого соединение было успешным. Когда я запускаю этот код в Visual Studio, я получаю недопустимый URI.

Вот мой код, который я пытался в C#

Uri target = new Uri("ftp://ftp.domain.com/"); 
FtpWebRequest requestDir = (FtpWebRequest)FtpWebRequest.Create(target); 
requestDir.Credentials = new NetworkCredential("user", "pass"); 

Uri target = new Uri("ftp://ftp.domain.com/"); 
FtpWebRequest requestDir = (FtpWebRequest)FtpWebRequest.Create(target); 
requestDir.Credentials = new NetworkCredential("user", "pass"); 

Запрашиваемый URI является недопустимой для этой команды FTP

Я смотрел здесь, как Есть много, как это, но я я попробовал все (думаю), и я просто продолжаю получать эту ошибку. Есть идеи?

Спасибо!

ответ

0

Я был в состоянии заставить его работать с помощью некоторых других сообщений здесь и много проблем. У меня теперь есть эта работа и перешли к новым ошибкам. Вот код для успешной загрузки FTP:

reqCakes = (FtpWebRequest)WebRequest.Create("ftp://domain.com/images/" + "koala.jpg"); 
       reqCakes.UseBinary = true; 
       reqCakes.Method = WebRequestMethods.Ftp.UploadFile; 
       reqCakes.Credentials = new NetworkCredential("user", "pass"); 
       BinaryReader rdrCakes = new BinaryReader(File.Open(fileToOpen, FileMode.Open)); 
       rdrCakes.Close(); 
       byte[] cakeData = File.ReadAllBytes(fileToOpen); 
       reqCakes.ContentLength = cakeData.Length; 
       Stream reqStream = reqCakes.GetRequestStream(); 
       reqStream.Write(cakeData, 0, cakeData.Length); 
       reqStream.Close(); 
Смежные вопросы