【问题标题】:Too many connections when downloading files using FtpWebRequest?, help me使用 FtpWebRequest 下载文件时连接太多?,帮帮我
【发布时间】:2013-01-17 06:57:53
【问题描述】:

我使用 FtpWebRequest 从服务器下载多个文件。但是当使用 reqFTP.Credentials 发送请求时,它创建了太多的连接。如何打开一个连接并归档很多,这是我的代码:

    reqFTP = (FtpWebRequest) FtpWebRequest.Create (Uri));
                        reqFTP.Method = WebRequestMethods.Ftp.DownloadFile;
                        reqFTP.UseBinary = true;
                        reqFTP.Credentials = new NetworkCredential (ftpUserID,  ftpPassword);
FtpWebResponse response = (FtpWebResponse) reqFTP.GetResponse ();

每个文件必须 reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword) 一次,几千个文件?

【问题讨论】:

    标签: ftpwebrequest


    【解决方案1】:

    关于 FtpWebRequest 的 MSDN 文档非常混乱,因为他们说应该重用 FTP 连接,但没有说明如何使用。他们不说如何的原因是因为您不需要做任何特别的事情。您只需创建下一个 FtpWebRequest,它将意识到这些是相同的凭据并使用相同的连接,只要在 FtpWebRequest 中设置了 IsKeepAlive 标志,默认情况下就是这种情况。

    简短的回答是:您不需要做任何特别的事情来重用 ftp 连接。

    但是您可以通过不创建新凭据而只创建一次然后为每个 FtpWebRequest 重用它们来稍微改进您的代码。

    【讨论】:

      猜你喜欢
      • 2012-09-13
      • 2011-02-16
      • 2012-03-28
      • 2023-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多