1
我看到线程在 How to check FTP connection? 并尝试了一些建议。这是我目前有:检测有效的FTP连接
private void IsFtpLoginSuccessful(FtpClient ftpClient, string ftpFolder, string ftpUsername, string ftpPassword)
{
FtpWebRequest requestDir = (FtpWebRequest)FtpWebRequest.Create(ftpFolder);
requestDir.Credentials = new NetworkCredential(ftpUsername, ftpPassword);
try
{
Log(LogLevel.Debug, "Just entered TRY block");
requestDir.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
WebResponse response = requestDir.GetResponse();
Log(LogLevel.Debug, "GOOD");
}
catch (Exception ex)
{
Log(LogLevel.Debug, "BAD");
}
}
如果用户名/密码无效,这是记录的最后一件事是“刚进入TRY块”。该代码以某种方式默默地错误出来,从不记录“坏”。如果凭证有效,则继续执行并记录“GOOD”。
我想这给了我一个布尔是否登录是完全成功的。但是,有没有办法区分凭证是否损坏,或者它是否只是没有响应的FTP服务器?
谢谢!