如何在spring boot中设置禁用浏览器缓存?

Posted

技术标签:

【中文标题】如何在spring boot中设置禁用浏览器缓存?【英文标题】:How to set to disable browser cache in spring boot? 【发布时间】:2019-07-11 11:29:13 【问题描述】:

我想在 spring boot 中设置禁用浏览器缓存(cache-control: no-cache, no-store, max-age=0)。

我的环境

  spring-boot: 2.1.2
  spring-security: not use

我搜索是否要设置响应头的缓存控制:无缓存, 只需在 'application.yml' 中添加即可。

喜欢这个

spring.resources.cache:
  cachecontrol:
    max-age: 0
    no-cache: true
    no-store: true
    cache-private: true

spring.resources.chain.cache: false

但它不起作用。

我无法在我的 chrome 浏览器的响应标头中显示缓存控制标头。

在spring-framework中,我只是设置

<mvc:mapping path="/**"/>
    <bean id="webContentInterceptor" class="org.springframework.web.servlet.mvc.WebContentInterceptor">
         <property name="cacheSeconds" value="0"/>
         <property name="useExpiresHeader" value="true"/>
         <property name="useCacheControlHeader" value="true"/>
         <property name="useCacheControlNoStore" value="true"/>
    </bean>
</mvc:interceptor>

如何在没有spring security的情况下在spring boot中设置禁用浏览器缓存?

谢谢。

【问题讨论】:

【参考方案1】:

尝试在 application.properties 中添加这一行

spring.cache.type=NONE

【讨论】:

谢谢,但我添加了代码,它仍然响应标头不显示'cache-control'或'pragma'标头。

以上是关于如何在spring boot中设置禁用浏览器缓存?的主要内容,如果未能解决你的问题,请参考以下文章

Spring 如何在 Spring Boot 中设置数据源

如何在 Spring Boot 中设置 enableLoggingRequestDetails='true'

如何在 Spring Boot 中设置 UTF-8 字符编码?

如何在 Spring Boot 中的 DatabaseConfig 中设置属性

如何在 Spring Boot 中设置副本集?

如何在 Spring Boot 中设置 ActiveMQ 端口?