在Spring Boot common application properties的列表中,有两个与缓存持续时间相关的条目听起来与我相似:
spring.resources.cache.cachecontrol.max-age:
Maximum time the response should be cached, in seconds if no duration suffix is not specified.
spring.resources.cache.period:
Cache period for the resources served by the resource handler. If a duration suffix is not specified, seconds will be used.
在定义了 cache.period 的Spring Boot 1.x中,我可以发誓我的静态资源是通过缓存控制标头提供的,并且将max-age设置为提供的持续时间。
在Spring Boot 2.x中,我开始注意到不再将缓存控制标头应用于我的静态资源。然后,我用 cache.cachecontrol.max-age 替换了它,现在看到cache-control / max-age标头按预期出现。
这两项之间有什么区别,为什么行为似乎从1.x更改为2.x?这是我应该记录的错误,还是我只是不了解的两者之间的细微差别?
答案 0 :(得分:0)
感谢莫拉姆(Molham)的评论-回答已结束。看来这是一个错误,已经解决。
问题:https://github.com/spring-projects/spring-boot/issues/16488
固定提交:https://github.com/spring-projects/spring-boot/commit/94a9748ce0764cc52271385402e43d93c2232fa8