クライアントがサーバーに渡す必要があるパラメーターの 1 つは、ファイル パスpath/to/data
です。
MVC4コントローラーはスラッシュを使用してパラメーターを区切るため、そのまま送信することはできません。私はファイルパスをエスケープする安全なURLだと思います-例えば. path%2Fto%2Fdata
、サーバーに送信し、サーバー上でエスケープ解除します。
しかし、これはうまくいきません - MVC4 はルートを認識しません。MVC4 は %2f などをエスケープ解除しますか?
アップデート
ブラウザーの応答から、MVC4 はファイルパスを検査して URL のさまざまなフィールドを取得する前に、ファイルパスのエスケープを解除しているようです。
その後、二重エスケープを行うと、報告されます...
The request filtering module is configured to deny a request that contains a double escape sequence
少し読んだり読んだりした後、web.configの一部に追加する提案を試みました...
<security>
<requestFiltering allowDoubleEscaping="true" />
</security>
しかし、それは報告します...
A potentially dangerous Request.Path value was detected from the client (%).