问题标签 [fluentftp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4005 浏览

c# - Fluent ftp 获取最新文件并下载

我需要将今天的 csv 文件恢复到本地目录中下载文件。

我已经在 127.0.1 上使用 filezilla 服务器设置了一个测试环境,我正在将我的详细信息传递给下面的班级

我想将文件存储在本地目录值中,并且当它们被下载时,我希望从 ftp 中删除它们,但我不确定如何去做。

我一直在这里关注本教程。

https://github.com/robinrodricks/FluentFTP/blob/master/FluentFTP.Examples/GetListing.cs

调试信息的结果:

编辑 2

好的,所以我更进一步并更改了我的代码以使用下载文件,但现在我收到一条访问被拒绝的消息。

错误在这里

DownloadFile("C:\Users\user\AppData\Local\Fuel\", "/in/FuelPumpData.csv", True, None) 抛出异常:

mscorlib.dll 中的“System.IO.DirectoryNotFoundException”

甚至认为它是一个用户文件夹,它确实存在。

编辑 2 证明目录存在。 在此处输入图像描述

编辑 3 以显示 ftp 目录存在

在此处输入图像描述

编辑 4

证明 .net 对象正在代码中查找文件。

在此处输入图像描述

编辑 5 显示目录权限。 在此处输入图像描述

编辑 6

在此处输入图像描述

0 投票
0 回答
991 浏览

c# - FluentFTP 在尝试列出 ftps 服务器上的文件时抛出“System.IO.IOException: Authentication failed”

描述 当使用 FluentFTP 连接到 FileZilla FTPS 服务器时,我们System.IO.IOException: Authentication failed because the remote party has closed the transport stream.在尝试列出文件时得到一个。

我们可以建立初始连接,我们可以登录,但是当 FluentFTP 尝试通过 EPSV 建立数据连接时,它会出错并出现该异常。

到目前为止,我们的研究似乎指向 TLS 恢复失败。FTPS 服务器坚持要求数据连接从控制连接恢复 TLS 会话,这似乎失败了。奇怪的是,这只发生在 Linux 或 WSL 上的 dotnetcore 上。在 Windows 上的 dotnetcore 上一切正常。

版本:DotNetCore 2.1.5 FluentFTP 19.2.2

操作系统 Ubuntu 18.04 / Windows 10 WSL Ubuntu 18.04

演示代码

例外

FluentFTP 日志

我们做错了什么?

0 投票
1 回答
1407 浏览

c# - 在 c# 中使用 Fluent FTP 从 FTP 服务器获取最后添加/复制的文件

我正在使用下面的代码。(FluentFTP)但Item.Modified将只给出文件创建日期。所以它的渲染基于复制的文件创建日期。(不是在复制时)我将如何根据 Fluent FTP 中的复制/添加日期获取文件。

0 投票
1 回答
5364 浏览

c# - FluentFtp 无法连接但可以在 filezilla

我正在使用 Fluent Ftp 将文件发送到服务器我使用 filezilla 中的快速连接连接良好,但在我的代码中出现超时错误。

我基于另一个添加了以下内容,但它不起作用,并且不允许我连接到最终用户 ftp,但可以通过 filezilla。

client.EncryptionMode = FtpEncryptionMode.Implicit;

客户端.SslProtocols = SslProtocols.Tls12;

在此处输入图像描述

确切的错误在上面

0 投票
0 回答
691 浏览

c# - FluentFTP 连接在本地计算机上有效,但在 Windows 2019 服务器上无效

到目前为止,我有一个 C# 终端应用程序,它一直在我的个人开发电脑上运行。该应用程序使用 FTP 来检索一些文件。对于通过 FTP 简单下载特定文件,我只使用常规 System.Net.WebClient 并使用用户名和密码填写 NetworkCredentials,但该应用程序还使用 FluentFTP 进行一些更复杂的 FTP 上传。

这基本上是我使用 FluentFTP 连接的方式:

当我在 Windows 2019 服务器上运行终端程序并尝试使用 FluentFTP 进行连接时,它突然停止连接FluentFTP.FTPCommandException,异常堆栈中没有写入任何其他信息。我尝试记录 FTP 跟踪,这就是我得到的: Windows 2019 服务器上的 FTP 跟踪日志 它似乎突然中断而没有错误代码。

我已经在我的本地开发机器上对其进行了测试,它在这里工作: 本地开发 pc 上的 FTP-Trace 日志

我试图查看它是否与登录或类似的东西有关,但是当登录凭据错误时,这就是结果。它带有 530 响应: 密码错误时本地开发人员电脑上的 FTP-Trace 登录

我也考虑过服务器上的防火墙和端口问题,但让我感到困惑的是,通过 System.Net.WebClient 通过 FTP 进行的简单下载似乎在服务器上运行良好。

如果有人对我如何解决这个障碍有任何想法,那么我将非常感谢您的帮助!

编辑

我在服务器和本地电脑上运行时复制了 FtpClient 的属性,似乎有一些区别:

本地电脑

能力=大小,MDTM

哈希算法=无

加密模式=无

数据连接加密=真

纯文本加密=假

SslProtocols=默认

系统类型=Windows_NT

服务器类型=未知

服务器操作系统=Windows 

  视窗服务器

能力=无

哈希算法=无

加密模式=无

数据连接加密=真

纯文本加密=假

SslProtocols=默认

系统类型=未知

服务器类型=未知

服务器操作系统=未知

0 投票
3 回答
3110 浏览

c# - 使用 FluentFTP 将文件从 FTP 复制到 blob 存储的 Azure 功能

我有一个添加每日文件的 FTP 源,我需要使用 azure 函数中的 FluentFTP 库每天将文件从 FTP 复制到 blob 存储

我在 Azure 函数中使用 C#,我完成了所有编码部分,但缺少从 FTP 下载文件以将其直接复制到 blob 目标。

如果我可以将 blob 容器用作 FluentFTP 函数的目标,那将是最好的,但这样我会收到错误,即我正在使用的这个 blob 块不是目标

这是我得到的错误

无法从“Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob”转换为“字符串”

我不知道是否有另一种方法可以在本地下载文件,因此我可以将其上传到 blob 而不是使用此client.DownloadFile功能。

0 投票
0 回答
1312 浏览

c# - FluentFtp 使用 tls 连接到 FTP 服务器,可以获取工作目录,但尝试获取文件列表时超时

我有一小段 c# 测试代码 (4.7.2) 使用 FluentFtp 连接到基于 Linux 的未知类型和未知衍生 Linux 的服务器。

我正在 VS 2017 上开发。

我使用 NuGet 加载 FluentFTP。

我的测试代码的 .Net 级别是 4.7.2。

至今:

它连接。

我可以获得一个工作目录(GetWorkingDirectory())。

当我尝试获取文件列表时,它会显示“尝试连接超时!” 在 FluentFtp GetListing 上。

代码是:

控制台输出是:

我查看了许多 SO 帖子和 FluentFTP 问题,并尝试了几个想法。我也尝试过 PASV 和 EPSV,结果相同。

由于所有带有“tls”的 FTP 有点令人困惑,如果有替代品,直接 .Net 或第三方,我当然会招待他们。我有点时间紧张。

问候,吉姆

0 投票
0 回答
470 浏览

c# - C# FluentFTP 连接错误 - FTPS Windows 7

我尝试建立一个 FTPS 连接(显式)。在 Windows 10 上,我的程序运行良好,但在 Windows 7 上出现错误。我在 C# 中使用 FluentFTP 库。

我已经尝试使用 Tls、Tls11、Tls12 更改 SslProtocols,但它不起作用。

这是我的错误:

谢谢你的帮助。

0 投票
1 回答
290 浏览

c# - 进程无法访问文件,因为它被另一个进程使用

所以我收到异常“进程无法访问文件,因为它被另一个进程使用。

当我调用此特定方法时,将显示异常:

并像这样在另一个类中调用它:

之前它不是异步的,但我不得不将它改造成异步方法。但我认为我正确地关闭了读者和客户。可能是异步方法的问题吗?因为在我让它异步之前我没有这个问题。

有人可以解释我做错了什么吗?

请注意,我使用FluentFTP的是https://github.com/robinrodricks/FluentFTP

0 投票
0 回答
775 浏览

c# - 应用程序作为 Windows 任务运行时出现“不知道这样的主机”FluentFTP 错误

我有一段非常直接的代码可以使用 C# 和 FluentFTP 将一些数据上传到 ftp。

wherehost是一个有效的 ftp 主机名,file是一个字节数组,并且path是 ftp 上的现有远程位置。我可以使用来自 filezilla 等 ftp 客户端的凭据成功登录到我的 ftp,用户已设置所有必需的权限,在调试模式下或执行应用程序文件时一切正常。但是,当应用程序作为 Windows 任务执行时,我的自定义日志文件中不断出现下一个异常:

仅当应用程序作为 Windows 任务执行时才会发生这种情况。是否有一些可能影响连接的 Windows 任务的防火墙配置?还是其他不明显的问题?

这些是应用于我的 Windows 任务的当前配置: 在此处输入图像描述

其中dmytr是我创建任务的 Windows 管理员用户。