SharpSSH:请求的名称有效,但未找到所请求类型的数据

时间:2017-02-18 11:14:38

标签: c# iis ftp sftp sharpssh

我正在尝试使用SharpSSH连接到SFTP服务器,并获得异常 -

  

Tamir.SharpSsh.jsch.JSchException:System.Net.Sockets.SocketException:请求的名称有效,但未找到所请求类型的数据

我的代码如下所示:

Sftp sftp = null;
sftp = new Sftp("ftp://XX.XXX.XX.XX/", "UserName", "Password");
sftp.Connect();

我是否以错误的格式编写服务器地址? 可能是另一个原因是什么?如果DNS问题..那么这些是什么以及如何解决它们?

1 个答案:

答案 0 :(得分:1)

  1. 不要使用SharpSSH,它是一个死的项目。使用一些维护的SFTP库。见SFTP Libraries for .NET
  2. Sftp类的第一个参数称为sftpHost,因此您无法传递网址,您必须传递主机名,即只传递XX.XXX.XX.XX
  3. SharpSSH是SFTP / SSH库,而不是FTP。如果您确实需要连接到FTP,则无法使用SharpSSH。
  4. IIS确实不支持SFTP。它仅支持FTP(以及FTPS = FTP over TLS / SSL)。见Is IIS SFTP natively supported by Windows?
    对于FTPS / FTPS,请使用.NET框架中的FtpWebRequest