0

キャッシュ マニフェストを使用してオフラインにする Web アプリを開発しています。

正常に動作していますが、マニフェスト ファイルを変更するたびに最後のバージョンが確実に読み込まれるように、ファイルの 1 つ (js ファイル) に対して Apache に no-cache ディレクティブを追加しようとしました。

しかし実際には、マニフェスト ファイルは変更されていませんが、js ファイルは毎回 (もちろん、デバイスがオフラインでない場合に) リロードされるようになりました。

Safari と WebKit でのみテストしました。

それは正常な動作ですか?マニフェスト ディレクティブが apache ディレクティブに取って代わると思いました...

編集:実際には、apache no-cache ディレクティブを無効にしましたが、マニフェストが変更されていないにもかかわらず、js ファイルは毎回再ロードされます。

理解できない。数日前、マニフェストが変更されても、この JS ファイルはリロードされませんでしたが、現在は毎回リロードされます (デバイスが実際にオフラインの場合を除く)。

ですから、それはもはや問題ではありませんが、もしかしたらあなたが手がかりになるかもしれません...

4

2 に答える 2

2

このテーマに関する良い記事を読みました。

http://www.webdirections.org/blog/appcache-not-so-much-a-douchebag-as-a-complete-pain-in-the/

于 2013-11-05T20:08:47.273 に答える
0

これは非常に特殊なケースですが、他の誰かに起こった場合に備えて:

Chrome でテストしたところ、正常に動作していました。そのため、サファリでキャッシュを空にすると、すべてが正常に戻りました。iPhone で機内モードに切り替え、サイトを読み込んで接続モードに戻すと、こちらも通常に戻ります。

したがって、キャッシュされたファイルの一部が破損しているため、エラーを発生させることなく、毎回 Safari がファイルをロードしていると思います... :(

「幻の虫」のようなものだったので、よくわかりません。しかし、それが役立つ場合に備えて。

編集:さらに調査した結果、破損は、jsfile にパラメーターを追加しようとしたという事実、つまり file.js?v=xxx に起因するようです

マニフェストファイルに反映するかどうかに関係なく、元に戻そうとするたびに、このバグ/奇妙な動作になりました...

于 2013-10-30T14:00:19.840 に答える