コンテンツにHTML5ローカルストレージを使用しない理由はありますか


9

多くの静的なWebサイトでは、最も人気のある20ページの実際のテキストコンテンツの合計サイズは100kb未満になります。

HTML5ローカルストレージを利用して、サーバーからAJAX経由でコンテンツを単一のファイルにダウンロードし、ローカルストレージに保存して、angularJSなどのデータドリブンJSフレームワークで使用することができると思います。実際、バックグラウンドでさらに多くのコンテンツをサイレントでダウンロードしている可能性があります。これにより、非常に高速で応答性の高いユーザーエクスペリエンスが実現する可能性があります。

これにもかかわらず、私はこのように動作しているウェブサイトを見たことがありません。これが悪い考えになる理由が欠けている理由はありますか?


1
SEOを機能させることを忘れないでください。そして、本当にブラウザのキャッシュを再発明する必要がありますか?
jfriend00

これの多くはブラウザによって行われることを忘れます。これを行わない正当な理由は、そのようなリソースを1つ更新する必要がある場合はどうなるでしょうか。
Neil

GETリクエストに適切なキャッチヘッダーを提供し、ブラウザに負荷のかかる作業を行わせる方がはるかに簡単であるため、これは悪い考えです。
Esben Skov Pedersen、2015

@ jfriend00、はい、私もSEOについて疑問に思っていました。Googleのクローラーは基本的なJavaScriptを処理できると思いますが、これはおそらくクローラーの範囲を超えています。
マシュードルマン

@ニール、リソースに応じて有効期限タイムアウトが組み込まれていると思います。投稿で述べたように、短期間の更新が行われない静的サイトについてさらに考えていました
Matthew Dolman

回答:


6

あなたの質問への短い答えは、あなたが説明するような多くのことが起こっていない理由は、HTML5のローカルストレージがこのタスクにまったく及ばないためであり、私たちは過去2年間かそこらまで何も欠けていたためだと思いますより良い解決策を提供することが指定されています。

特にHTML5ローカルストレージについて:競合状態やその他の問題があり、データの破損がないことを保証したいアプリケーションや、単なる文字列以外のものも保存できるアプリケーションの本番環境での使用に適していません。 。

ローカルストレージのこれらの問題はおそらく修正される可能性がありますが、実際には、ブラウザーエンジンベンダーのいずれも、ローカルストレージ実装にさらにリソースをシンクすることに関心を示していません。彼らはむしろ、Web開発者がローカルストレージの代替手段を使用することを望んでいます。

とにかく、あなたが説明するユースケースについては、ありがたいことに実際にはより堅牢なソリューションが実際にあります。今後の主な要素はService Workerです。この質問のコンテキストでは、Service WorkerのキャッシュCacheStorageのインターフェイスが特に重要になります。

また、IndexedDBは、クライアントでのデータの堅牢なストレージの一般的なケースに対してWebランタイムが現在備えている本番環境グレードのソリューションであり、効率的な実装と、格納されるデータのタイプとその格納方法に対する機能満載の制御を備えています。


"local storage is in no way up to the task"- YESそれはISタスクのためにアップ。サーバーからの応答をそこにダンプすることができ、単純なアプリケーションの場合、5MB制限を傷つけることはありません。それはそのためのものではありませんでしたが、それでもサーバー応答のキャッシュに非常にうまく使用できます。
vsync 2018年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.