我有以下代码可以访问SFTP:
private void InitializeSftpConnection()
{
FtpHost = _config.GetRequiredValue("FtpHost");
FtpFolder = _config.GetRequiredValue("FtpFolder");
FtpUsername = _config.GetRequiredValue("FtpUsername");
FtpPassword = _config.GetRequiredValue("FtpPassword");
using (var client = new SftpClient(FtpHost, 22, FtpUsername, FtpPassword))
{
client.Connect();
var files = client.ListDirectory(".").Where(f => f.IsDirectory && f.Name == FtpFolder).Select(f => f.Name);
if (!files.Any())
{
throw new Exception($"Remote FTP folder {FtpFolder} does'nt exist.");
}
}
}
它可以很好地连接到SFTP,但是无法连接到FTP。
但是当我尝试访问常规FTP而不是SFTP时,它在client.Connect();
上失败。我尝试将端口更改为21,但这没有帮助。
请指教!谢谢