3

私が理解しているように、FtpWebRequest.Proxyプロパティは HTTP プロキシを示します。FTP プロキシ経由で外部サーバーに FTP 要求を発行する必要があります。

これまでのところ、これを機能させる唯一の方法は、Windows FTP コマンドを使用するスクリプトを作成し、その方法でダウンロードすることです。

を使用しFtpWebRequestて、FTP プロキシ経由でファイルをダウンロードできますか?

4

5 に答える 5

3

以前に使用したコードは次のとおりです。これをチェックポイント ファイアウォールに対してのみテストしたので、FTP プロキシでは USER コマンドと PASS コマンドの形式が異なる可能性があることに注意してください。システム管理者は、正しい形式を知っています。

FtpWebRequest reqFTP = (FtpWebRequest)FtpWebRequest.Create(
       new Uri("ftp://FTP PROXY HOST/actual/path/to/file/on/remote/ftp/server"));
reqFTP.Method = WebRequestMethods.Ftp.DownloadFile;
reqFTP.UseBinary = true;

reqFTP.Credentials = new NetworkCredential
       ("REMOTE FTP USER@FTP PROXY USER@REMOTE FTP HOST"
       , "REMOTE FTP PASSWORD@FTP PROXY PASSWORD");
于 2012-05-10T15:11:27.110 に答える
1

私はこれが期日をはるかに過ぎていることを知っていますが、はい、URLをに設定する古いトリックを使用することでFtpWebRequestをftpプロキシで動作させることができます

"ftp://your.proxy.server/theFileToDownload")" 

次に、ネットワーククレデンシャルをに設定します

username="ftpUserName@ftp.realserver.com" 

password="password". 

古き良きWININETの時代にこれを行ったことを思い出しましたが、古いトリックが依然として最高のトリックである場合もあります。

もちろんYMMV。

于 2011-11-04T21:01:57.740 に答える
1

予算に余裕がある場合、Dart は次のような優れたクラスを提供しています。

http://www.dart.com/ または具体的に は http://www.dart.com/ptftpnet.aspx

于 2010-09-02T10:26:19.157 に答える
-1

彼らは、リスト、リストの詳細、およびプロキシを介したダウンロードが可能であると主張しています。ただし、これを isa ファイアウォールで動作させることはできませんでした。そのため、app.config で既定のプロキシを無効にし、ForeFront/ISA クライアントのアプリケーション ルールを追加しました。これを行うために、次の内容のファイル c:\programdata\microsoft\firewall client 2004\application.ini を作成しました。

[applicationName] DisableEx=0 Disable=0 NameResolution=R

ここで、applicationName は、実行中の exe から .exe 拡張子を引いたものです。

于 2010-10-26T01:39:04.987 に答える