我想通过代码统一在FTP上传一个XML文件,但我无法先连接到FTP。
所以在上传之前我只是尝试访问FTP和列表目录。
我使用此代码:
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(host);
request.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
request.Credentials = new NetworkCredential(user, pass);
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
Debug.Log(string.Format("Directory List Complete, status {0}", response.StatusDescription));
response.Close();
但我总是有同样的错误:
错误: [例外]例外验证或解密失败。
错误: [例外]异常服务器返回错误:550-此服务器需要加密。 550您必须先发出AUTH命令才能更改为加密会话,然后才能尝试登录。
正在寻找其他帖子,我看到身份验证是匿名的,或者我的身份是正常的。
此外,FTP需要TLS协议。
感谢您的帮助。
答案 0 :(得分:2)
如果您的FTP服务器需要TLS / SSL加密,则必须使用FtpWebRequest.EnableSsl
启用它:
request.EnableSsl = true;