0

我有一个清单高速缓冲存储器的问题HTML 5,这是我的清单文件:缓存清单高速缓冲存储器中的所有文件

CACHE MANIFEST 
# This manifest was generated by grunt-manifest HTML5 Cache Manifest Generator 
# Time: Tue Jan 13 2015 15:05:00 GMT+0100 (Central European Standard Time) 

CACHE: 
js/application.js 
js/pdf.js 
js/vendor.js 
js/vendor/jquery.min.js 

NETWORK: 
* 

SETTINGS: 
prefer-online 

我想在manifest.appcache只缓存文件节“缓存”。所有其他文件(如Ajax请求)不应该被浏览器缓存。

现在,每次刷新都从缓存中加载,当我刷新网站。

Cache chrome

什么,我做错了什么?

回答

1

将您的js文件移出CACHE指令以明确缓存它们。

CACHE MANIFEST 
# Tue Jan 13 2015 15:05:00 GMT+0100 (Central European Standard Time) 

# Explicitly cached entries 
js/application.js 
js/pdf.js 
js/vendor.js 
js/vendor/jquery.min.js 

# offline.html will be displayed if the user is offline 
FALLBACK: 
# offline.html 

# All other resources (e.g. sites) require the user to be online. 
NETWORK: 
* 

# Additional resources to cache 
CACHE: 
# ... 

Template taken from A Beginner's Guide to Using the Application Cache

您也将有每个资源一个主入口具有明显的指示:

这些添加到缓存中,因为用户访问一个浏览器上下文包含在文档资源表示它使用其清单属性(Using the application cache)位于此缓存中。

而一个清单文件本身。

您可能会看到缓存的其他内容与清单文件无关,而是正常的浏览器缓存资源,您可以使用已知的缓存清除技术(例如将随机参数添加到资源url中)进行缓存。

Here is a good SO post on preventing caching of ajax resources

+0

http://el.your-project.co.uk/manifest.appcache - 这是我的新的应用程序缓存清单文件,所以结果是这个相同的:http://i.imgur.com/ hnrQEmQ.png – bordeux

+0

是您的清单在浏览器中明确更新? – XGreen

+0

http://el.your-project.co.uk/Auth?manifest=1 < - 在这里你可以检查这个(记住关于获取参数)。第一个请求是好的,但是当你使用f5时,ajax调用是无效的。 是的。 Broweser更新的文件(我删除所有网站数据铬) – bordeux