【问题标题】:How to navigate to a sub directory through a proxy with FTPWebRequest如何使用 FTPWebRequest 通过代理导航到子目录
【发布时间】:2012-09-13 12:36:56
【问题描述】:

我目前正在尝试通过 ftp 代理登录到 ftp 服务器。使用下面的 sn -p

 async {
          let r = FtpWebRequest.Create("ftp://<ftp-proxy-address>") :?> FtpWebRequest
          r.Method <- WebRequestMethods.Ftp.ListDirectoryDetails      
          r.Timeout <- req.Timeout.TotalMilliseconds |> int
          r.Proxy <- null 
          r.Credentials <- NetworkCredential("user@host/subdirectory","password")
          use! response = r.AsyncGetResponse()
          use sr = new StreamReader(response.GetResponseStream(), req.Encoding)
          let result = handler sr
          return result
        }

但是,这总是让我登录到用户目录根目录,而不是登录到我在用户凭据中指定的子目录。有没有办法让它工作?

注意如果我不使用 FTP 代理,而是指定 HTTP 代理,它似乎可以工作。我可以看到正在发出的 CWD 命令,我最终进入了我期望的目录

【问题讨论】:

    标签: proxy ftp ftpwebrequest


    【解决方案1】:

    您必须先登录,然后再更改目录。

    【讨论】:

    • 遗憾的是,这不起作用,无法通过 FtpWebRequest 发出 CWD/CD 命令。这是为您透明地完成的,但似乎不适用于代理
    最近更新 更多