使用的是SpringMVC,将“json”字符串配置成了一个view Bean。
class="org.springframework.web.servlet.view.json.MappingJackson2JsonView" />
然后查看MappingJackson2JsonView源代码发现,父类中有个参数disableCaching默认为ture。
注解:Default is {@code true}, which will prevent the client from caching the generated JSON (这将阻止客户端缓存生成的JSON)
所以找到了设置Cache-Control:no-cache, no-store, max-age=0的地方
修改方法:
增加一个bean配置,修改disableCaching值
class="org.springframework.web.servlet.view.json.MappingJackson2JsonView" >
java代码中最后返回新的字符串:return "jsonCanCache";