FtpWebResponse,操作超时
本文关键字:超时 操作 FtpWebResponse | 更新日期: 2023-09-27 18:22:35
我想从ftp服务器下载基于日期时间的文件。。我可以从CuteFtp第三方访问这个Ftp,一切都很好。。但是当我在GetRespone()
行运行下面的代码时,我得到了这个错误:操作超时了。我用webclient requet以编程方式从这个FTP下载了一个示例文件,它很好。。但我需要使用FtpWebRequest
来获取listDirectoryDetail,而webClient不支持。。还有一件事,请求中有一个异常:FtpWebRequest.ContentType
抛出了一个类型为System.NotSupportedException
的异常。
这是我的代码:
Uri uri = new Uri("ftp://192.168.1.5:2100/");//the private address
if (uri.Scheme != Uri.UriSchemeFtp)
{
return;
}
FtpWebRequest reqFTP;
reqFTP = (FtpWebRequest)WebRequest.Create(uri);
reqFTP.Credentials = new NetworkCredential("myuser", "mypass");
reqFTP.KeepAlive = false;
reqFTP.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
reqFTP.UseBinary = true;
reqFTP.Proxy = null;
reqFTP.UsePassive = false;
FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
请帮助:(
我已经解决了我的问题!。。。UsePassive属性应设置为True,当它为True时,客户端应在数据端口上启动连接
reqFTP.UsePassive = true;