Ich versuche herauszufinden, wie diese Datei auf meinem FTP-Server in C# hochgeladen werden. Wenn es getResponse()
auf ftpwebrequest
aufruft, wirft es einen Fehler, der "550 - Zugriff verweigert" besagt. Ich kann nicht herausfinden warum. Ich kann eine Verbindung mit dem Server mit Filezilla gut mit den gleichen Anmeldeinformationen herstellen.ftpwebrequest.getresponse wirft 550 Zugriff verweigert
Hier ist mein Code, der die Verbindung funktioniert:
private void UploadFileToFTP(HttpPostedFile file, string server, string user, string pass)
{
string uploadUrl = server + file.FileName;
string uploadFileName = Path.GetFileName(file.FileName);
Stream streamObj = file.InputStream;
Byte[] buffer = new Byte[file.ContentLength];
streamObj.Read(buffer, 0, buffer.Length);
streamObj.Close();
streamObj = null;
try
{
SetMethodRequiresCWD();
FtpWebRequest ftp = (FtpWebRequest)FtpWebRequest.Create(uploadUrl);
//ftp.Method = WebRequestMethods.Ftp.MakeDirectory;
ftp.Method = WebRequestMethods.Ftp.UploadFile;
ftp.UsePassive = true;
ftp.Credentials = new NetworkCredential(user, pass);
FtpWebResponse CreateForderResponse = (FtpWebResponse)ftp.GetResponse();
if (CreateForderResponse.StatusCode == FtpStatusCode.PathnameCreated)
{
string ftpUrl = string.Format("{0}/{1}", uploadUrl, uploadFileName);
FtpWebRequest requestObj = FtpWebRequest.Create(ftpUrl) as FtpWebRequest;
requestObj.KeepAlive = true;
requestObj.UseBinary = true;
requestObj.Method = WebRequestMethods.Ftp.UploadFile;
requestObj.Credentials = new NetworkCredential(user, pass);
Stream requestStream = requestObj.GetRequestStream();
requestStream.Write(buffer, 0, buffer.Length);
requestStream.Flush();
requestStream.Close();
requestObj = null;
}
}
catch (WebException e)
{
String status = ((FtpWebResponse)e.Response).StatusDescription;
}
}
Wenn Sie auf die gleiche FTP-Site über Datei-Zilla verbinden Sie tatsächlich erfolgreich mit file-zilla hochladen – MethodMan
ja, Upload und Download funktioniert gut mit filezilla – dmikester1
versuchen Sie dies mit 'WebClient' hier http: // stackoverflow .com/questions/15268760/upload-file-zu-ftp-using-c-sharp – MethodMan