FTP上传和下载 - 获得227或500错误

时间:2017-09-26 16:29:43

标签: c# ftp-client ftpwebresponse

我想使用FTP上传和下载文件。我设法为我的上传和下载方法整理了以下代码。我被困在同一个地方。

如果我使用:

Object.assign

它给了我500个错误。 但是,如果我只使用:

ftpRequest.UsePassive = false;
FtpWebResponse response = (FtpWebResponse)ftpRequest.GetResponseStream();

我得到:远程服务器返回错误:227进入被动模式。

这在下载和上传方法中都是相同的行为。我可以使用在线客户端上传文件,所以我知道服务器设置正常。我禁用了我的防病毒软件的防火墙,因为有些线程建议,但这也不起作用。现在我不知道该怎么做。我的上传和下载方法如下:

我的上传方法

FtpWebResponse response = (FtpWebResponse)ftpRequest.GetResponseStream();

我的下载方法

private static void Upload ()
{
    FtpWebRequest ftpRequest = (FtpWebRequest)WebRequest.Create("ftp://ftp.myserver.com/");
    ftpRequest.Credentials = new NetworkCredential("username", "password");
    ftpRequest.Method = WebRequestMethods.Ftp.ListDirectory;
    ftpRequest.UsePassive = false;
    FtpWebResponse response = (FtpWebResponse)ftpRequest.GetResponse();
    StreamReader streamReader = new StreamReader(response.GetResponseStream());

    string line = streamReader.ReadLine();
    while (!string.IsNullOrEmpty(line))
    {
        Console.WriteLine(line);
        line = streamReader.ReadLine();
    }

    streamReader.Close();
}

1 个答案:

答案 0 :(得分:0)

这实际上是一个完美的解决方案。适用于我哥们的笔记本电脑而不是我的。似乎是一些防病毒设置。