JSPページ内のキャッシュを無効にする方法
-
03-07-2019 - |
質問
ページキャッシュを無効にするHTTP応答ヘッダーディレクティブがあることを理解しています:
Cache-Control:no-cache
<!> quot; hand <!> quot;:
でヘッダーを変更できます <%response.addHeader("Cache-Control","no-cache");%>
しかし、<!> quot; nice <!> quot; JSPインタープリターがサーバーの応答でこのヘッダー行を返すようにする方法?
(<!> lt;%@ page ...%<!> gt;ディレクティブをチェックしました。そのようなものはないようです。)
解決
追加
response.addHeader("Expires","-1"); response.addHeader("Pragma","no-cache");
ヘッダーに追加して、それを試してみてください。
他のヒント
サーブレットを使用している場合、質問に投稿したものが正しいアプローチだと思います。 JSPでこれを行う方法を知りません。
<?xml version="1.0"?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0">
<jsp:scriptlet><![CDATA[
response.setHeader("Cache-Control", "no-cache");
]]></jsp:scriptlet>
</jsp:root>
応答ヘッダーを<jsp:root />
内に配置する必要があります。また、代わりに、JSPページではなく、サーブレットからこれを送信することをお勧めします。
IIRC一部のブラウザは、一部のコンテキストでキャッシュ制御設定を無視する場合があります。これに対する「安全な」回避策は、新しいクエリ文字列変数(時間など)で常にページ(AJAXチャンクを含む)を取得することでした。
所属していません StackOverflow