2016-05-06 106 views
2

我試圖從公共FTP服務器下載文件。這裏是我的C#源代碼:獲取421錯誤

 FtpWebRequest request = FtpWebRequest.Create(new Uri("ftp://ftp.exotic-guild.de/test.exe")) as FtpWebRequest; 


     request.Credentials = new NetworkCredential("[email protected]", ""); 
     request.UsePassive = true; 
     request.UseBinary = true; 
     request.KeepAlive = true; 
     request.Method = WebRequestMethods.Ftp.DownloadFile; 
     FtpWebResponse response = request.GetResponse() as FtpWebResponse; 
     System.IO.Stream responseStream = response.GetResponseStream(); 

     responseStream.Close(); 
     response.Close(); //Closes the connection to the server 

這裏是臨客從public_ftp服務器的文檔:wolkenbauer anonymus ftp documentation

回答

1

使用ftp.exe ftp.exotic-guild.de的迴應是:

421對不起,明文會話和弱密碼不接受此服務器上。 請使用SSL/TLS安全機制重新連接。 遠程主機關閉連接。

所以加:

request.EnableSsl = true; 
System.Net.ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true; 

第二線繞過證書驗證,因爲證書服務是出於某種原因(你可能想調查)無效。

遠程證書根據驗證過程

是無效