Vij*_*rya 6 .net c# ftp ftps fluentftp
得到
尝试从套接字流中读取数据超时!
使用 FluentFTP 连接到 FTP 时。
下面是我用来连接的源代码:
Console.WriteLine("Configuring FTP to Connect to {0}", hostname);
ftp = new FtpClient(hostname,port,new NetworkCredential(username,password));
ftp.ConnectTimeout = 600000;
ftp.ReadTimeout = 60000;
ftp.EncryptionMode = FtpEncryptionMode.Explicit;
ftp.SslProtocols = System.Security.Authentication.SslProtocols.Tls;
ftp.ValidateCertificate += new FtpSslValidation(OnValidateCertificate);
ftp.Connect();
Console.WriteLine("Connected to {0}", hostname);
ftp.SetWorkingDirectory(foldername);
Console.WriteLine("Changed directory to {0}", foldername);
Run Code Online (Sandbox Code Playgroud)
void OnValidateCertificate(FtpClient control, FtpSslValidationEventArgs e)
{
// add logic to test if certificate is valid here
e.Accept = true;
}
Run Code Online (Sandbox Code Playgroud)
用于成功连接的 FileZilla 日志文件。我可以通过 FileZilla 连接该位置。日志片段如下:
Console.WriteLine("Configuring FTP to Connect to {0}", hostname);
ftp = new FtpClient(hostname,port,new NetworkCredential(username,password));
ftp.ConnectTimeout = 600000;
ftp.ReadTimeout = 60000;
ftp.EncryptionMode = FtpEncryptionMode.Explicit;
ftp.SslProtocols = System.Security.Authentication.SslProtocols.Tls;
ftp.ValidateCertificate += new FtpSslValidation(OnValidateCertificate);
ftp.Connect();
Console.WriteLine("Connected to {0}", hostname);
ftp.SetWorkingDirectory(foldername);
Console.WriteLine("Changed directory to {0}", foldername);
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪:
void OnValidateCertificate(FtpClient control, FtpSslValidationEventArgs e)
{
// add logic to test if certificate is valid here
e.Accept = true;
}
Run Code Online (Sandbox Code Playgroud)
在 FileZilla 中,您将连接到隐式FTPS 端口 990。
如果您也在 C# 中使用此端口,则不能使用FtpEncryptionMode.Explicit.
使用FtpEncryptionMode.Implicit.
尽管您最好连接到端口 21 并继续使用FtpEncryptionMode.Explicit,如果该端口可用。
| 归档时间: |
|
| 查看次数: |
11204 次 |
| 最近记录: |