我目前正在尝试通过 ftp 代理登录到 ftp 服务器。使用以下代码段
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 命令,我最终进入了我期望的目录