2

サーバーのクロックがクライアントのクロックより進んでいる場合、以下のコードは機能しますか?

Response.Cache.SetExpires(DateTime.Now.AddSeconds(-1))

編集: 私が尋ねる理由は、一部のユーザーが、以前にそのマシンを使用したユーザーからのページ (口座番号など) を見ていると主張している私たちの Web アプリの 1 つにあります。それでも、上記の行やその他の行を使用して、これが発生するのを「防止」します。

4

3 に答える 3

3

この質問では、Web ページがキャッシュされていないことを確認する方法について説明します。Web ページがすべてのブラウザーでキャッシュされないようにするには、いくつかのプロパティを設定する必要があるようです。

于 2008-09-11T19:29:10.080 に答える
0

私が知る限り、ブラウザはローカル クロックに対して有効期限をチェックします (ただし、タイム ゾーンは考慮されます)。そのため、クライアントのクロックが不正確な場合、質問のコードが期待どおりに機能しない可能性があります。最も一般的なのは、時刻が正しいように見えても間違ったタイムゾーンに設定されている場合です。つまり、UTC タイムスタンプが実際には数時間ずれています。

たとえば、0000 1970 年 1 月 1 日 GMT (エポック) のように、もっと古いタイムスタンプを設定してみてください。

あなたが持っているコードはサーバー側のキャッシュで動作するはずですが、次の方法でより明示的に無効にすることができます:

Response.Cache.SetNoServerCaching();
于 2008-09-11T21:32:44.200 に答える
0

この問題は、ブラウザがフォーム フィールドに入力されたデータを記憶していることが原因である可能性があります。これを次のようにオフにできます。

<input autocomplete="off">
于 2008-09-11T19:33:04.563 に答える