0

わかりました、新しいウィンドウでコンテンツを開くために form.target を使用しています。しかし、これを行ってブラウザの戻るボタンを押すと、GET の結果のエントリがサーバーへの別のラウンドトリップを行っていることがわかります。セッション変数がその間に変更された可能性があるため、これは問題であり、新しい GET は古いものと一致しなくなります。

私はこの Web アプリケーションに C# と JavaScript を使用しています。

この動作は IE8 では発生しますが、Firefox 10 では発生しません。IE でこれを防ぐ方法はありますか?

4

1 に答える 1

0

URL にクエリ文字列としてセミランダム ID を追加することで、この問題を解決しました。

これを OnInit イベントにも追加しました。何らかの理由で、キャッシュ設定を明示的に設定すると役立ちます。

Response.AppendHeader("Cache-Control", "private, max-age=600");

組み合わせることで、これによりページに一意性が与えられ、ブラウザーのキャッシュが強制されました。これにより、ブラウザーは、閲覧履歴で GET 操作が発生したときに常にページの最新バージョンを取得できませんでした。

于 2012-05-08T18:39:02.937 に答える