我们有一个在iPhone上运行的网络应用程序。
清单文件正常,资源(html,css,js)正确缓存。
页面位于主屏幕。
问题是,当页面从缓存加载资源时,还有一个GET调用服务器来读取缓存清单文件。
服务器配置为发送正确的标题(最大 - age = 31536000; public等...)并缓存除缓存清单本身以外的所有其他文件。
这是正常行为吗?对于每个资源负载,看起来有一个轻微的延迟,因为该调用。
任何想法,如果这些多次调用可以获得状态304甚至更好地避免?
答案 0 :(得分:1)
你应该check the spec for details,但是定期检查清单文件的更新(每个会话,或每小时或......)是合乎逻辑的,并且不遵循http-header-cache指令,但如果在缓存中的文件的每个请求都会发生这种情况,那将是不合逻辑的。
所以这可能是您的代码或移动版Safari中的错误?
规范提到了对http 304响应代码的支持,因此确保发送可能确实是一种解决方案。