无法使用此动词类型发送内容正文

时间:2013-05-18 14:01:23

标签: c# ftp

    FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://www.MySite.com/public_html/Text.txt");
    request.Method = WebRequestMethods.Ftp.DownloadFile;

    request.Credentials = new NetworkCredential(" ", " ");

    StreamReader sourceStream = new StreamReader(Environment.CurrentDirectory + "/Text.txt");
    byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
    sourceStream.Close();
    request.ContentLength = fileContents.Length;

    Stream requestStream = request.GetRequestStream();
    requestStream.Write(fileContents, 0, fileContents.Length);
    requestStream.Close();

    FtpWebResponse response = (FtpWebResponse)request.GetResponse();
    response.Close();

Stream requestStream = request.GetRequestStream();给我错误“无法使用此动词类型发送内容正文。”。

如何解决这个问题的任何帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

你已经告诉它使用DownloadFile,它是FTP RETR方法 - 并且不需要正文 - 就像HTTP GET不占用正文一样。如果要发送正文,请指定UploadFile(FTP STOR)或类似内容;或者 - 不要发送尸体。