フォーム認証を使用してアクセスを制御するasp.netアプリケーションがあります。フォームを含むファイル page.aspx があるとします。検索 (フォームの [送信] ボタン) を押すと、POST データがそのスクリプトに送信され、検索結果が得られます。ただし、ユーザーがログアウトし、ブラウザの戻るボタンを押してから検索を押すと、ユーザーはログイン ページにリダイレクトされます。ログイン後、そのページを取得しましたが、そのページに POST データが送信されません。それを簡単に直す方法はありませんか!
2 に答える
1
HTTPリダイレクト応答でリダイレクトする場合、POSTデータを送信できません。したがって、アプリケーションのフローを変更する必要があります。ユーザーがより簡単にログアウトしていることを検出します。
- フォームを送信する前に、ajaxリクエストでログインステータスを確認してください
- 送信されたデータをCookieに保存して、ログイン後にPOSTを再作成します
- ログインページにリダイレクトする前に、送信されたデータをセッションに保存します
于 2012-10-11T14:13:07.240 に答える
1
フォーム認証CookieはセッションCookieではないため、ユーザーセッションがまだある場合は、検索パラメーターをユーザーセッションに保存し、ログイン後にそれらを再ロードできる可能性があります。
于 2012-10-11T14:13:43.693 に答える