我搜索并发现了其他问题,但没有一个解决了我的问题.我正在尝试使用示例MSDN代码通过FTP上传文件.我得到远程服务器返回错误:(550)文件不可用(例如,找不到文件,没有访问)错误在这一行:ftpstream.Close();
string inputfilepath = @"C:\DWF\test.txt";
string ftpfilepath = "/abc/def/hij/klm/nop/test.txt";
string ftphost = "my-ser-ver1:2121";
//here correct hostname or IP of the ftp server to be given
string ftpfullpath = "ftp://" + ftphost + ftpfilepath;
FtpWebRequest ftp = (FtpWebRequest)FtpWebRequest.Create(ftpfullpath);
ftp.Credentials = new NetworkCredential("user", "pass");
//userid and password for the ftp server to given
ftp.KeepAlive = true;
ftp.UseBinary = true;
ftp.Method = WebRequestMethods.Ftp.UploadFile;
FileStream fs = File.OpenRead(inputfilepath);
byte[] buffer = new byte[fs.Length];
fs.Read(buffer, 0, buffer.Length);
fs.Close();
Stream ftpstream = ftp.GetRequestStream();
ftpstream.Write(buffer, 0, buffer.Length);
ftpstream.Close();
Run Code Online (Sandbox Code Playgroud)
我已经仔细检查了URI的空格,但没有.我能够使用具有相同用户登录名的filezilla完成此任务.没有古怪的默认目录已经是我的URI的一部分.有一点可以肯定的是,我正在连接到unix服务器,所以可能有一个我缺少的设置?
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [220 Oracle Content Services FTP Server ready.]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Sending command [USER myuser]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [331 Password required for myuser.]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Sending command [PASS ********]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [230 Login successful.]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Sending command [OPTS utf8 on]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [500 Command not supported: OPTS]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Sending command [PWD]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [257 "/"]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Sending command [TYPE I]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [200 TYPE set to I.]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Sending command [PASV]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [227 Entering Passive Mode (10,8,9,50,77,53)]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Sending command [STOR abc/def/hij/klm/nop/test.txt]
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [150 Ok to send data.]
System.Net Verbose: 0 : [7584] Exiting FtpWebRequest#10964107::GetRequestStream()
System.Net Information: 0 : [7584] FtpControlStream#62182359 - Received response [550 Access denied.]
System.Net Information: 0 : [7584] FtpWebRequest#10964107::(Releasing FTP connection#62182359.)
Run Code Online (Sandbox Code Playgroud)