私はこの質問を見てきましたが、それは私の現在の問題/尋問に適合していないと言わざるを得ません.
シナリオ:
ユーザーが (Ajax 呼び出しを介して) 正常にログインすると、/app にリダイレクトされ ( document.location.href
)、基本的な HTML が CSS および JS ファイルと共に送信されます。
問題:
現在、appname-2.3.3.js のような縮小された JavaScript および CSS ファイル名にバージョン番号を付けており、クエリ文字列のバージョン番号を追加して、新しいバージョンで更新されるようにしています。
<script src="/js/app/appname-2.3.3-min.js?1207040740" language="javascript" type="text/javascript"></script>
新しいログイン後に新しいバージョンをプッシュすると、ファイル名とクエリ文字列の番号が変更されても、ブラウザーは最後のバージョンをキャッシュしたままにします。新しい静的ファイルを取得するには、CTRL+F5 でページ全体を更新する必要があります。
質問:
a) 新しいログイン ユーザーがそれぞれ適切なバージョンを使用できるようにする最善の方法は何ですか? 私の推測では、/app HTML ページはキャッシュであり、ログイン後にリダイレクトするときにクエリ文字列の値をそこに置く必要があるかもしれません。しかし、それはログインメソッドを呼び出すjavascriptファイルが「正しい」バージョンである必要があるなどの問題につながります.
/app ページをキャッシュしないようにブラウザーに指示するには、コントローラーで HTTP ヘッダーを指定する必要がありますか? そのページから静的ファイルがキャッシュされていないことを意味しますか?
ほぼ毎週のように新しい更新があり、キャッシュはまだ必要です。
b)あなたの観点から、すでにログインしているユーザーに、新しいバージョンが更新され、ページを更新する必要があることを警告する優れたユーザーエクスペリエンスの方法は何ですか. ユーザーの知覚から「許容できる」ものですか。
参考までに、このアプリは ASP.NET MVC 3 上に構築されています。
お時間いただきありがとうございます/入力