0

私のURLは問題ないことを事前にお伝えできます。最近、サーバー アプリケーションを移動しましたが、現在のシステムには優れたプロキシがあります。

したがって、プロキシが問題であると思いますが、解決方法がわかりません。最も奇妙なことは、Filezilla では FTPServer にログインできますが、.Net コードでは不可能です。バイナリに変更しようとしました。手動でプロキシを指定してパッシブに...しかし成功しません。GetResponse() で常にクラッシュします。他の興味深いことは、wilcard(つまり、*.csv)を使用しない場合、応答はファイルリストの情報を含むHTMLです。

私のコード:

FtpWebRequest listRequest = (FtpWebRequest)WebRequest.Create(
            ftpDir == null ? Constants.FTPServer + (wildcard == null ? "" : "/" + wildcard) : Constants.MasternautFTPServer + "/" + ftpDir
            + (wildcard == null ? "" : "/" + wildcard)
            );
listRequest.Method = WebRequestMethods.Ftp.ListDirectory;
listRequest.UseBinary = true;
listRequest.UsePassive = true;
listRequest.Credentials = Credentials;
listRequest.Proxy = Proxy;
FtpWebResponse listResponse = (FtpWebResponse)listRequest.GetResponse();

Stream listResponseStream = listResponse.GetResponseStream();
StreamReader listreader = new StreamReader(listResponseStream, Encoding.UTF7);
string listOfFilesStr = listreader.ReadToEnd();
ret = new List<string>(listOfFilesStr.Split(new[] { "\r\n" },StringSplitOptions.RemoveEmptyEntries));
ret.Remove(".");
ret.Remove("..");
ret.Remove(".ftpquota");
listreader.Close();
listResponse.Close();

Proxyメソッドによって取得される場所WebRequest.GetSystemWebProxy();

だから、今私はこれを解決する方法を調査しています...誰でも助けてもらえますか???

4

0 に答える 0