2

最近、クライアントから、(サードパーティのサイトからPOSTではなく)を使用してレガシーサイトにログインするように求められましたGET。必要なすべての変数が、クエリ文字列ではなく投稿内で送信されるようになりました。

問題は、すべての変数を受け取ると、それらがSessionに格納され、アプリケーション内の正しいページにリダイレクトされることです(ロゴ入力ページから)。を使用してページを呼び出す場合、これは完全に機能しますがGETPOST呼び出し後、すべてのセッション変数が失われます。

Response.Redirect(@"~/SOMEPAGE.aspx",false);

奇妙なもう1つの点は、セッションIDは同じままですが、すべての値が失われることです。Server.Transferを使用する場合、セッションはそのままですが、Response.Redirect使用すると失われます。(すべてのコードを変更するオプションはありません。)

これを解決する方法、または使用される可能性のあるある種の回避策を知っている人はいますか?

ありがとう!!!

4

1 に答える 1

0

これが発生する可能性がある理由はいくつかあります。

  • コードでSession.Abandon()を使用しています
  • 安全な(https://)URLと安全でない(http://)URLを切り替えています
  • global.asaxに、Sessionを操作しているコード、またはResponse.Cookieの.Secureプロパティまたは.Pathプロパティがあります。

http://forums.asp.net/t/1670844.aspxを編集します

于 2013-02-05T20:18:14.710 に答える