アプリケーションキャッシュを使用していますが、以下の問題に直面しています:
Tomcat サーバーの場合:
サーバーがオンラインのときにページに初めてアクセスすると、マニフェスト ファイルで指定されたファイルがアプリケーション キャッシュに正常に取り込まれます。
サーバーがオフラインの場合、キャッシュされたページにアクセスしようとすると、ブラウザー コンソールにエラーが表示されます (Application Cache Error event: Manifest fetch failed (-1)
インターネットでの調査によると、これはごく普通のことです) が、アプリケーション キャッシュは正常に機能します。
Weblogic サーバーの場合:
オンライン モードで Weblogic サーバーで同じコードを実行しようとしましたが、ファイルは期待どおりにキャッシュされます。しかし、オフライン モードでは、初めてページが読み込まれると正常に動作しますが、コンソールを見ると、アプリケーション キャッシュのステータスが OBSOLETE モードになるため、ページを再度更新するとスローされます404 エラー。また、"Application Cache Error event: Manifest fetch failed (-1)"
Tomcat サーバーでコードを実行しようとすると、取得できません。私が間違っていることを教えてください。以下にファイルを示します。
index.html
<html manifest="demo.appcache">
<head>
<link rel="stylesheet" href="style.css" type="text/css" />
<script type="text/javascript" src="script.js" ></script>
</head>
<body>
<h1>Basic example of page using Application Cache</h1>
<p>Disconnect from the internet and try to reload this page. It should load without requiring you to connect to the internet.</p>
</body>
</html>
マニフェスト ファイル (demo.appcache)
CACHE MANIFEST
CACHE:
style.css
script.js
index.html
demo.appcache
NETWORK:
*
スタイル.css
body{
background-color: #333;
}
h1{
color: #c94054;
}
p{
color: #fff;
}
script.js
if (!window.applicationCache){
alert('It seems that Application Cache is not supported in this browser. Please use a browser which supports it.');
}
web.xml
<mime-mapping>
<extension>appcache</extension>
<mime-type>text/cache-manifest</mime-type>
</mime-mapping>