加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – FtpWebResponse,操作超时

发布时间:2020-12-15 18:34:55 所属栏目:百科 来源:网络整理
导读:我想从ftp服务器下载基于日期时间的文件..我可以从CuteFtp第三方访问这个Ftp,而且每件事都是Okey ..但是当我在GetRespone()行运行下面的代码时,我得到这个错误:操作已经超时. 我用webclient requet以编程方式从这个FTP下载了一个示例文件,它很好..但是我需
我想从ftp服务器下载基于日期时间的文件..我可以从CuteFtp第三方访问这个Ftp,而且每件事都是Okey ..但是当我在GetRespone()行运行下面的代码时,我得到这个错误:操作已经超时.
我用webclient requet以编程方式从这个FTP下载了一个示例文件,它很好..但是我需要使用FtpWebRequest来获取listDirectoryDe??tail而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,当客户端应该在数据端口上启动连接时
reqFTP.UsePassive = true;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读