代码之家  ›  专栏  ›  技术社区  ›  Eduard Wirch

如何停用jsp页面内的缓存

  •  4
  • Eduard Wirch  · 技术社区  · 18 年前

    我知道有一个HTTP响应头指令用于禁用页面缓存:

    Cache-Control:no-cache
    

     <%response.addHeader("Cache-Control","no-cache");%>
    

    但是,有没有一种“好”的方法可以让JSP解释器在服务器响应中返回这个头行呢?

    4 回复  |  直到 18 年前
        1
  •  3
  •   Eric Wendelin    18 年前

    还加

    response.addHeader("Expires","-1");
    response.addHeader("Pragma","no-cache");
    

        2
  •  0
  •   pkaeding    18 年前

    如果您使用的是servlet,那么我相信您在问题中发布的内容将是正确的方法。我不知道在JSP中有什么方法可以做到这一点。

        3
  •  0
  •   Swati Markus    18 年前
    <?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 />

        4
  •  0
  •   Kev    18 年前

    IIRC某些浏览器在某些上下文中可能会忽略缓存控制设置。“安全”的解决方法是始终使用新的查询字符串变量(如时间)获取页面(甚至是AJAX块)

    推荐文章