据我了解,FtpWebRequest.Proxy
属性表示 HTTP 代理。我必须通过 FTP 代理向外部服务器发出 FTP 请求。
到目前为止,我唯一能做到这一点的方法是创建一个使用 Windows FTP 命令的脚本并以这种方式下载。
是否可以使用 FtpWebRequest
通过 FTP 代理下载文件?
最佳答案
这是我以前使用过的代码,需要注意的是我只针对 Checkpoint 防火墙测试过它,因此 USER 和 PASS 命令的格式对于您的 FTP 代理可能不同。您的系统管理员会知道正确的格式。
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");
关于c# - 是否可以通过 FTP 代理使用 C# FtpWebRequest?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3626109/