2

ファイルを FTP にアップロードしようとしています。ログインすると、ディレクトリ /out に設定されます。アップロードする前に、1 つのディレクトリに戻ってからディレクトリ /in に戻る必要があります。私はこのコードを持っています:

       FtpWebRequest req = (FtpWebRequest)FtpWebRequest.Create("FTP://ftps.something.xx/%2fin/FILENAME.TXT");
       req.EnableSsl = true;
       req.Credentials = new NetworkCredential(username, password);
       req.KeepAlive = false;
       req.Method = WebRequestMethods.Ftp.UploadFile;
       req.UseBinary = true;
       req.ContentLength = Exportfile.Length;
       req.UsePassive = true;

サーバーからのログでは、STOR コマンドが次のように送信されるまで、すべて正常に動作します。

STOR /in/FILENAME.TXT

これにより、「パスの変更は許可されていません」という 500 エラーが発生します。/%2fin/ を使用したソリューションは、1 ノッチ下げるためのコマンドを送信し、次に /in ディレクトリまでのコマンドを送信すると考えました。それとも私は何かを逃しましたか?助けてくれてありがとう!

4

1 に答える 1

0

私が読んだことから、代わりにFtpWebRequest使用する必要があります%e2%e2/in//%2fin/

%e2%e2/in/と同等である必要があります:

cd ..
cd in

の代わりに、/%2fin/次と同等です:

CD /
CD イン

cd /CDルートを意味します。

于 2014-06-27T18:52:11.163 に答える