我有一個OpenUI5應用程序;我的應用程序只有一個htlm頁面(index.html),一些js文件(用於邏輯控制器)和一些xml文件(用於視圖)。與單頁應用程序混淆
該應用程序是一個單頁面應用程序;這是我index.html
起始頁:
<!DOCTYPE html>
<html manifest="app.appcache">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta charset="UTF-8">
<!--<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />-->
<title>My App</title>
<!-- UI5 Bootstrap with OpenUI5 -->
<script id="sap-ui-bootstrap"
type="text/javascript"
src="resources/openui/sap-ui-core.js"
data-sap-ui-theme="sap_bluecrystal"
data-sap-ui-xx-bindingSyntax="complex"
data-sap-ui-libs="sap.m"
data-sap-ui-resourceroots='{
"ui5bp": "./",
"model": "./model"
}'
>
</script>
<!-- Custom Styles -->
<link rel="stylesheet" type="text/css" href="css/style.css" />
<script>
new sap.m.Shell("Shell", {
showLogout : false,
app : new sap.ui.core.ComponentContainer({
name : 'ui5bp'
}),
homeIcon : {
'phone' : "img/57_ogo.jpg",
'[email protected]' : "img/114_logo.jpg",
'tablet' : "img/72__logo.jpg",
'[email protected]' : "img/144_logo.jpg",
'precomposed': false,
'favicon' : "img/favicon.ico"
}
}).placeAt('root');
</script>
</head>
<body class="sapUiBody" id="root">
</body>
</html>
,這是我清單文件app.appcache
(我改變它在每一個新版本)
CACHE MANIFEST
#APP VERSION 1.0.4-rc4
#insert here files to cache
#insert here files to NOT cache
NETWORK:
*
OK!但是現在我在我的服務器和BOOM上覆制應用程序!某些頁面被重新載入,但其他頁面不會被載入...(例如,我有一個登錄XML-view,其中顯示已更新的發行版本以及未更新的設置對話框的XML) 爲什麼我有這種行爲?我希望瀏覽器在每次重新加載時重新加載每個文件
P.S. 如果我用F5重新載入應用程序,問題依然存在。 如果我在index.html文件添加這些元標籤的問題仍然
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
僅模式瀏覽器,迫使整個應用程序的重新加載,取消手動緩存:
又是什麼問題?您正在討論使用F5刷新瀏覽器。如果應用程序緩存按預期完成,則F5刷新不應從服務器獲取新版本。這是應用程序緩存的重點! –
當我測試時,我通常會打開Chrome控制檯並在網絡選項卡 – Jorg
中勾選「禁用緩存」框。也許我找到了問題.. [link](https://developer.mozilla.org/en- US/docs/Web/HTML/Using_the_application_cache#Example_1_a_simple_cache_manifest_file) 紅色消息顯示:「重要提示:請勿在緩存清單文件中指定清單本身,否則幾乎不可能通知瀏覽器新的清單可用。 也許在過去,我已經將appcache文件插入appcache ... O_o – padibro