Я получаю файл с нашего FTP-сервера, который затем помещается в память и передается клиенту через HTTPS. У меня все работает без нареканий. Однако, если я включаю SSL, я получаю следующую ошибку:
WebException: удаленный сервер возвратил ошибку: (500) синтаксическая ошибка,
команда не распознана.]
System.Net.FtpWebRequest.SyncRequestCallback (Object obj) + 330
System.Net.FtpWebRequest.RequestCallback (Object obj) + 23
System.Net.CommandStream.InvokeRequestCallback (Object obj) + 17
System.Net.CommandStream.Abort (исключение e) + 168
System.Net.FtpWebRequest.FinishRequestStage (этап RequestStage) + 454
System.Net.FtpWebRequest.GetResponse () + 1398
Вот мой код:
FtpWebRequest ftp = (FtpWebRequest)WebRequest.Create(@"ftp://" + serverName + ":21/" + fileName);
ftp.Credentials = new NetworkCredential(userName, password);
ftp.UseBinary = true;
ftp.EnableSsl = true;
ftp.Method = WebRequestMethods.Ftp.DownloadFile;
FtpWebResponse response = null;
response = (FtpWebResponse)ftp.GetResponse();
Если я установлю для ftp.EnableSsl значение false или просто закомментирую его, он будет работать нормально. Любые идеи относительно того, что я делаю неправильно. Имейте в виду, я использую Windows XP Professional, используя IIS, встроенный в FTP-сервер. Я отлаживаю из IIS и работаю под https://localhost/projectNameHere/default.aspx.