2011-06-25 18 views
3

私はログインページを持つアプリケーションを書いています。アプリケーションはログインページにリダイレクトしています。「ログイン」をクリックすると、ユーザーはきちんと認証されます。ログボタンのポストバック方法の最後の動作は、ユーザーをリクエストしたページにリダイレクトすることです。ログインページがFirefoxのログイン後にリダイレクトされない5

ただし、firefox 5では、単にページを更新します。私はそれに対してフィドラーを実行し、リダイレクトする302要求が実際にブラウザーに送られていることを確認しました。しかし、それはブラウザがそれを尊重していないようなものです。それは私に再びログインページを示しています。

アイデア?誰もがこれを行うには良い方法を知っていれば

+0

いくつかのサンプルコードが役に立ちます。 – Ian

+0

だから、私は以下の問題があることを知ったと思います。Firefox 5キャッシュがリダイレクトします。だから私はログインページにリダイレクトされると、キャッシュされ、私はログインを渡し、元のページにリダイレクトしようとすると、Firefoxは、キャッシュされた場所、つまりログインページに私を送ります。では、301と302の応答をキャッシュしないようブラウザにどのように伝えますか? – mccow002

+0

誰かがこれを行う良い方法を知っているなら、投稿しても構いませんが、最終的にはリダイレクトアクションを返す前に次の権利を追加することです。 Response.Cache.SetExpires(DateTime.Now ); このようにして、firefox 5はログインページへの302リダイレクトをキャッシュできません。元のURLにリダイレクトしようとすると、そこに実際に送信されます。できるだけ早く回答として投稿します – mccow002

答えて

3

ので、それを投稿すること自由に感じ、私はついにそれが働いて得る方法は、私がリダイレクトアクションを返さ前に、以下の権利を追加しました:

Response.Cache.SetExpires(DateTime.Now); 

このway firefox 5はログインページへの302リダイレクトをキャッシュできません。元のURLにリダイレクトしようとすると、そこに実際に送信されます。

+0

はい、それは正解です。 301/302リダイレクトにキャッシュコントロールヘッダーを追加して同じ問題を解決しました。 firefox 5のように見えるこれらのヘッダーの存在をより厳格です。 – cherouvim

関連する問題