2016-08-30 66 views
0

我的项目需要离线功能。我已经实现了HTML5的离线功能,并且工作正常。我面临的问题是当互联网可用时。浏览器从缓存中加载数据,而不是从Web服务器获取数据。我知道这是因为清单文件没有改变。当互联网可用时停止从缓存加载页面

有没有一种方法可以在互联网可用时强制浏览器从服务器加载数据,并在没有互联网可用时从缓存中加载数据?

我的项目在CakePHP中。

回答

0

我有you

一个很好的阅读,但只是给你,你应该建立一个清单文件并选择文件/文件夹将与和没有互联网连接加载预览。舱单代码

<!DOCTYPE HTML> 
<html manifest="demo.appcache"> 
... 
</html> 

清单文件

例子是一个简单的文本文件,它告诉浏览器如何缓存(什么从不缓存)。

manifest文件有三个部分:

CACHE MANIFEST - 该标题下的文件中列出他们正在下载首次

网络后会被缓存 - 文件该标题下的上市要求到服务器的连接,并且永远不会被缓存

回退 - 此页眉下列出的文件指定了页面不存在时的备用页面够到

完整示例

CACHE MANIFEST 
# 2016-08-29 v1.0.0 
/theme.css 
/logo.gif 
/main.js 

NETWORK: 
login.asp 

FALLBACK: 
/html/ /offline.html 

我希望这启发你的想法我的朋友。 =)

+0

尤里感谢您的评论。我知道你评论过的内容。我的项目在CakePHP中。我已经提到了Manifest文件中的资源,但是由于cakePHP中有一个简单的Manifest文件并不能解决我所面临的问题。 – Xylon