2016-08-30 70 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