クエリ文字列を介して特定のレコードの ID を渡すことにしたので、ID ( id=090ed4fe-daec-452d-b025-f664dcc1164d
) を暗号化し、その値を URL に添付しました。
/ の URL エンコード値は %2f であることは周知のとおりです。したがって、アプリケーションの特定のインスタンスでは、id=090ed4fe-daec-452d-b025-f664dcc1164d
暗号化されてからエンコードされた id 値 ( ) が値を返します。
M2vaIbPkOqO6lw4jv%2bqE2f%2fhTrK495ny92uPcLBOJBNcMpg1RUme%2fvAo6LyKfdp9e
リンクにカーソルを合わせると、次のようになります。
M2vaIbPkOqO6lw4jv+qE//hTrK495ny92uPcLBOJBNcMpg1RUme/vAo6LyKfdp9e
正しい「暗号化およびエンコード」部分。しかし、Context.Request.RawUrl
プロパティを使用して URL を取得すると、次のようになります。
M2vaIbPkOqO6lw4jv+qE/hTrK495ny92uPcLBOJBNcMpg1RUme/vAo6LyKfdp9e
問題は、文字列から「/」を1つ削除するため、文字列を復号化できなくなることです。
ところで、私はこのモジュールを何ヶ月も使用していますが、この問題に遭遇したことはありません。初めて2つの '/'(2f%2f) が隣接していることがわかりました。
とにかくContext.Request.RawUrl
、正しい文字列を返して、1つの「/」をストライピングしないようにすることはできますか?