使用FtpWebResponse下载文件-文件下载后,即使从ftp服务器删除
本文关键字:ftp 删除 服务器 下载 FtpWebResponse 文件 文件下载 使用 | 更新日期: 2023-09-27 17:50:44
我正在使用FtpWebResponse从ftp服务器下载文件。我的代码是这样的:
FtpWebRequest request;
try
{
request = (FtpWebRequest)FtpWebRequest.Create(path);
request.UseBinary = true;
request.Credentials = new NetworkCredential(user, passwd);
request.Method = WebRequestMethods.Ftp.DownloadFile;
using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
{
MemoryStream ms = new MemoryStream();
using (Stream rs = (Stream)response.GetResponseStream())
{
rs.CopyTo(ms);
}
}
}
catch (Exception ex)
{
... error handling code here ...
}
工作得很好-我能够读取内存流并查看文件。我当时正在测试,所以我将另一个文件复制到ftp服务器上,删除了旧的文件,并将新文件重命名为相同的名称,然后重新运行我的程序。我仍然看到旧文件——我从ftp服务器上删除的那个文件——而不是新的文件。所以我删除了新文件-现在ftp服务器上没有文件了。我重新运行我的程序,它运行没有错误,并继续显示我从ftp服务器的原始文件。如果我直接ftp到ftp服务器,我验证那里没有文件…
发生了什么?连接是否被缓存?这些症状已经明显一个小时了…
尝试:
request.CachePolicy = new System.Net.Cache.RequestCachePolicy(System.Net.Cache.RequestCacheLevel.NoCacheNoStore);