在localhost

时间:2016-10-08 10:18:05

标签: angularjs caching browser-cache

最近我们对其中一个应用程序进行了更改,我们注意到我们的客户没有获得新的视图。因此我们决定对文件进行版本控制,以便我们可以强制客户端浏览器在每次有新版本时获取新视图。

到目前为止一切顺利,但我们需要在部署此更改(版本控制)之前在本地环境中对此进行测试。不幸的是,在localhost上,视图永远不会被缓存。我注意到对视图的请求是通过Cache-Control发送的:max-age = 0。如果我没有误会,这会导致资源不被缓存。

我还读到这可能是由ETag标头引起的,所以我删除了它,但视图仍未缓存。另外,我在响应中设置了Cache-Control:max-age = 86400,public header。因此,剩下的唯一原因是请求中的Cache-Control:max-age = 0标头。所以我试着改变标题。我将请求中的缓存控制头设置为Cache-Control:max-age = 86400,public,但仍然没有运气。

AngualarJS要求提供观点,它们是指令中的模板。我们在本地和服务器上使用的IIS版本也有所不同。在本地我们使用7.5,在服务器上,它是8.0。这可能是问题吗?

有人能引导我走向正确的方向吗?

修改

Chrome启用工具中的“禁用缓存”选项已禁用。

1 个答案:

答案 0 :(得分:0)

我可以考虑的一件事是,如果您的浏览器只启用了本地系统,则启用了禁用缓存:

enter image description here

通常,绕过浏览器缓存非常棘手,因此大多数人都无法使用标头禁用浏览器缓存。遗憾的是,Cache-Control:max-age并未在浏览器中统一实施。如果上述情况仍然存在问题,您是否可以在Chrome开发者工具的网络标签中提供屏幕截图?