【问题标题】:C# - FTP with Proxy append string to fileC# - 带有代理的 FTP 将字符串附加到文件
【发布时间】:2014-03-27 15:07:09
【问题描述】:

我正在尝试将字符串附加到我的 ftp 服务器上的文本文件中。 正如我在微软的开发者网络中看到的那样,HTTP 代理不支持此功能。

如果指定的代理是HTTP代理,只有DownloadFile, 支持 ListDirectory 和 >ListDirectoryDe​​tails 命令。

现在因为我的公司使用 ftp 代理,我尝试使用我在此线程中阅读的内容:

FTP File Upload with HTTP Proxy

大多数 FTP 代理都在连接上做他们的事情,所以如果你没有 代理,你这样做:

服务器:myftpserver.com 用户:me 密码:pwd

使用 FTP 代理,您可以:

服务器:ftpproxy.mydomain.com 用户:me@myftpserver.com 密码:pwd

这个问题是虽然..我不知道我可以在哪里选择我的服务器上的路径..因为我输入它作为“用户名”

我现在尝试了很多但没有让它工作.. 我的问题是:有没有人使用 FTP with FTP 代理成功地将字符串附加到文本文件中? 谁能建议我一个好的第三方图书馆来处理这个问题?我遇到过 Xceed FTP 和 Rebex .. 但它们都是商业的 ..

干杯! 菲尔

【问题讨论】:

    标签: c# text proxy ftp append


    【解决方案1】:

    如果您为 FTP 使用 HTTP 代理,那么它是:

    1) FTP over HTTP - 这实际上是一个 HTTP 代理,可以处理 ftp:// URLs(参见 Steffen Ullrich 的回复)。在这种情况下,您实际上是在客户端使用 HTTP 协议(​​而不是 FTP)(代理充当翻译层)。因此,功能有些受限。仅支持基本的 FTP 操作,而且它似乎有点特定于代理。

    2) HTTP CONNECT - 大多数 HTTP 代理都支持“CONNECT”方法。这可用于建立通过代理到指定服务器/端口的隧道。它主要用于隧道 HTTPS 流量,一些代理只允许连接到特定端口(例如 HTTPS 使用的 443)。但是,如果代理允许隧道到任何端口,HTTP CONNECT 可以(错误)用于隧道 FTP 协议(​​只要被动模式用于所有传输)。在这种情况下,所有 FTP 操作都是可能的,包括附加到文件或恢复传输。

    大多数商业 FTP 组件都支持 HTTP CONNECT 代理 (Rebex does)。对于基于 HTTP 的 FTP,我宁愿建议寻找一个好的 HTTP 组件。

    【讨论】:

    • 那么,我怎样才能知道我的公司得到了哪一个?我知道的一件事是我们在代理上有两个不同的端口,一个用于 ftp,一个用于 http .. 这有帮助吗?
    • 最简单的方法是询问您的网络管理员。如果它不可行,您可以尝试编写使用各种代理类型连接的代码并测试哪一种有效。示例代码可以在这里找到:rebex.net/ftp-ssl.net/features/proxy.aspx(无需购买完整包,试用版即可测试)
    • 如果您在代理上有一个单独的 FTP 端口,那么很可能它既不是 FTP over HTTP 也不是 HTTP CONNECT,而是一个真正的FTP 代理(参见 Steffen Ullrich 的回复)。在这种情况下,也应该可以应用到文件或恢复传输。
    【解决方案2】:

    这取决于你是否有一个真正的 FTP 代理(例如,它使用 FTP 协议)或者你有一个也可以处理 ftp:// URL 的 HTTP 代理。在后一种情况下,可能没有办法将数据附加到现有文件。

    如果你有一个真正的 FTP 代理,你应该能够只使用你常用的 FTP 库并且只调整登录过程。大多数情况下,在 FTP 代理上以“user@host”的身份登录是用来使其将 FTP 连接转发到主机,但细节取决于代理。一旦你有了代理的 FTP 连接,你就可以发出 APPE 命令来将数据添加到现有文件中,例如就像使用未代理的 FTP 连接一样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-18
      • 2023-01-11
      • 1970-01-01
      • 2013-02-09
      • 1970-01-01
      • 2011-10-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多