C# 使用FtpWebRequest连接时出现错误530未登录

C# 使用FtpWebRequest连接时出现错误530未登录,c#,ftp,ftpwebrequest,C#,Ftp,Ftpwebrequest,我已经尝试了我能想到的一切。我正在尝试从FTP服务器获取目录列表。我可以从FileZilla登录并列出/下载 我的密码如下(字母已更改): 我尝试过使用Normalize(),但没有使用它 它在GetResponse()行中显示错误 代码如下: FtpWebRequest request = (FtpWebRequest)WebRequest.Create(thisConnection.remoteFTP_URI); request.KeepAlive = true; request.UsePa

我已经尝试了我能想到的一切。我正在尝试从FTP服务器获取目录列表。我可以从FileZilla登录并列出/下载

我的密码如下(字母已更改):

我尝试过使用
Normalize()
,但没有使用它

它在
GetResponse()
行中显示错误

代码如下:

FtpWebRequest request = (FtpWebRequest)WebRequest.Create(thisConnection.remoteFTP_URI);
request.KeepAlive = true;
request.UsePassive = true;
request.UseBinary = true;
request.Method = WebRequestMethods.Ftp.ListDirectory;
request.Credentials = new NetworkCredential(thisConnection.userName.Normalize(),thisConnection.passWord.Normalize());
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
我在其他FTP服务器上使用完全相同的代码,没有任何问题。我无法直接控制服务器,因此更改密码或其他服务器设置会有问题


谢谢你的帮助

您的密码字符串看起来像base64编码的

FileZilla在其配置文件(
sitemanager.xml
)中实际使用的格式是什么

因此,我猜您已经从
sitemanager.xml
复制了编码密码,并尝试在
FtpWebRequest
中将其用作文字密码

确保使用实际的文字密码。如果您不记得,请使用一些base64解码器。

您将。

并将日志添加到您的问题中。也包括FileZilla日志以进行比较(实际上是日志文件,而不是来自GUI的消息日志)。我直接从filezilla导出的xml复制和粘贴。我不知道这是怎么回事。我真的应该抓住它,非常感谢你的锐利目光!在我的辩护中(这里几乎没有),filezilla过去不以这种方式存储它们,或者至少我有包含纯文本密码的xml的旧副本,包括这一个。欢迎您。是的,FileZilla最近才在3.10.2-rc2(2015-02-25)中切换到base-64密码编码。
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(thisConnection.remoteFTP_URI);
request.KeepAlive = true;
request.UsePassive = true;
request.UseBinary = true;
request.Method = WebRequestMethods.Ftp.ListDirectory;
request.Credentials = new NetworkCredential(thisConnection.userName.Normalize(),thisConnection.passWord.Normalize());
FtpWebResponse response = (FtpWebResponse)request.GetResponse();