ホームページ  >  記事  >  ウェブフロントエンド  >  html5にはどのような保存方法があるのでしょうか?

html5にはどのような保存方法があるのでしょうか?

青灯夜游
青灯夜游オリジナル
2022-03-15 14:51:414688ブラウズ

HTML5 ストレージ タイプ: 1. データの長期保存に適したローカル ストレージ「localstorage」、2. ブラウザを閉じると保存されたデータは自動的に削除されるローカル ストレージ「sessionstorage」、3. オフラインキャッシュ「アプリケーション」キャッシュ」、アプリケーションに必要なファイルをローカルにキャッシュします。

html5にはどのような保存方法があるのでしょうか?

このチュートリアルの動作環境: Windows 7 システム、HTML5 バージョン、Dell G3 コンピューター。

h5 より前は、Cookie は主にストレージに使用されていました。 Cookie の欠点は、リクエスト ヘッダーにデータが含まれ、サイズが 4K 以内であることです。メインドメインの汚染。

主なアプリケーション: ショッピング カート、顧客ログイン

IE ブラウザの場合、UserData があり、サイズは 64k で、IE ブラウザのみがサポートしています。

HTML5 は、クライアント側でデータを保存するための 2 つの新しい方法を提供します。

  • localStorage - 時間制限のないデータ ストレージ
  • sessionStorage - セッションのデータ Storage

1. ローカル ストレージ localstorage

localStorage メソッドによって保存されるデータには時間制限がありません。データは翌日、翌週、または翌日以降も利用できます。

localStorage: データの長期保存に適しており、ブラウザを閉じてもデータは失われません;

ストレージ方法:

キーと値のペア (Key-Value) を使用すると、永続的に保存され、手動で削除しない限り有効期限が切れることはありません。

サイズ: ドメイン名ごとに

5M

#サポート:

注: IE9 localStorage はローカル ファイルをサポートしていません。サポートするには、プロジェクトをサーバーにデプロイする必要があります。

検出方法:

if(window.localStorage){
 alert('This browser supports localStorage');
}else{
 alert('This browser does NOT support localStorage');
}

よく使われるAPI:

  • getItem //レコードの取得

  • #setIten//レコードを設定

  • #removeItem//レコードを削除
  • ##key//取得キーに対応する値
  • clear//レコードに保存されているコンテンツをクリアします

## :

配列、画像、JSON、スタイル、スクリプト。 。 。 (内容を文字列にシリアル化できれば保存可能) 2.ローカルストレージsessionstorage

HTML5のローカルストレージAPIにおけるlocalStorageとsessionStorageは同じものです。違いは、sessionStorage はページを閉じた後にクリアされるのに対し、localStorage は常に保存されることです。

3. オフライン キャッシュ (アプリケーション キャッシュ)

HTML5 では、Web をキャッシュしてネットワークがない場合でも利用できるアプリケーション キャッシュが導入されており、キャッシュ マニフェスト ファイルを作成してアプリケーションを作成します。キャッシュ。

アプリケーションに必要なローカル キャッシュ ファイル

使用方法:

①マニフェスト ファイルの設定ページ上:

<!DOCTYPE HTML>
<html manifest="demo.appcache">
...
</html>

マニフェスト ファイル:

#マニフェスト ファイルは、何がキャッシュされるか (何がキャッシュされないのか) をブラウザーに伝える単純なテキスト ファイルです。

マニフェスト ファイルは 3 つのセクションに分けることができます:

キャッシュ マニフェスト

- この見出しの下にリストされているファイルは、最初のダウンロード後にキャッシュされます

NETWORK - この見出しの下にリストされているファイルはサーバーへの接続が必要であり、キャッシュされません

FALLBACK - この見出しの下にリストされているファイルページにアクセスできません (404 ページなど)

完全なデモ:

CACHE MANIFEST
# 2016-07-24 v1.0.0
/theme.css
/main.js
 
NETWORK:
login.jsp
 
FALLBACK:
/html/ /offline.html

サーバー上: マニフェスト ファイルを構成する必要があります正しい MIME タイプ、「text/cache-manifest」。

例: Tomcat:

<mime-mapping>
     <extension>manifest</extension>
     <mime-type>text/cache-manifest</mime-type>
</mime-mapping>

一般的に使用される API:

コアは applicationCache オブジェクトであり、このオブジェクトには次のステータス属性があります。アプリケーション キャッシュの現在のステータス。 :

0 (UNCACHED) : キャッシュなし、つまりページに関連するアプリケーション キャッシュがない

1 (IDLE) : アイドル、つまり、アプリケーション キャッシュは更新されていません

2 (CHECKING): チェック中、つまり説明ファイルがダウンロードされ、更新をチェック中です

3 (DOWNLOADING): ダウンロード中、つまりアプリケーション キャッシュは、説明ファイルで指定されたリソースをダウンロードしています。

4 (UPDATEREADY): 更新が完了し、すべてのリソースがダウンロードされました。

5 (IDLE): 放棄されました。アプリケーション キャッシュ記述ファイルは存在しないため、ページはアプリケーション キャッシュにアクセスできなくなります

関連イベント:

アプリケーション キャッシュのステータスの変更を示します:

checking: ブラウザがアプリケーション キャッシュの更新を探すときにトリガーされます

error: 更新をチェックするときまたはダウンロードするときにトリガーされます リソース中にエラーが送信されるときにトリガーされます

noupdate: チェックするときにトリガーされます説明ファイルを確認し、ファイルに変更がないことを確認する

downloading: アプリケーション キャッシュ リソースのダウンロードを開始するときにトリガーされます

progress: ファイル内 アプリケーション キャッシュのダウンロード プロセス中に継続的にダウンロードすることによってトリガーされます

updateready: ページ上の新しいアプリケーション キャッシュがダウンロードされたときにトリガーされます

cached: アプリケーション キャッシュが完全に利用可能になったときにトリガーされます

アプリケーション キャッシュの 3 つの利点:

① オフライン閲覧

② ページの読み込み速度の向上

③ サーバー負荷の軽減

注:

1. ブラウザーには、キャッシュされたデータの容量制限が異なる場合があります (一部のブラウザーで設定されている制限は、サイトごとに 5MB です)
2 . マニフェスト ファイルまたは内部的にリストされているファイルの 1 つが正常にダウンロードできない場合、更新プロセス全体が失敗とみなされ、ブラウザは引き続き古いキャッシュを使用します (#3)。マニフェストを参照する HTML は、マニフェストと同じオリジンを持つ必要があります。マニフェスト ファイルと同じ場所にあること ドメインの下にある
4. ブラウザは、マニフェスト ファイルを参照する HTML ファイルを自動的にキャッシュします。これは、HTML コンテンツが変更された場合、更新するにはバージョンを更新する必要があることを意味します。
5. マニフェスト ファイル内の CACHE は、NETWORK と FALLBACK の位置順序とは関係ありません。暗黙の宣言の場合は先頭にある必要があります。
6. FALLBACK 内のリソースは、マニフェスト ファイルと同じ生成元
7. 更新 バージョンが完了したら、新しいバージョンを開始する前に一度更新する必要があり (ページは 1 回更新されます)、リスニング バージョン イベントを追加する必要があります。
8. サイト内の他のページにマニフェスト属性が設定されていない場合でも、要求されたリソースがキャッシュ内にあれば、キャッシュからアクセスされます
9. マニフェスト ファイルが変更されると、リソース要求自体が更新をトリガーします

オフライン キャッシュと従来のブラウザ キャッシュの違い:

1. オフライン キャッシュはアプリケーション全体を対象とし、ブラウザ キャッシュは単一のファイルです

2. オフライン キャッシュが壊れています オンラインでもページを開くことはできますが、ブラウザーのキャッシュが機能していません

3. オフライン キャッシュにより、ブラウザーにリソースを更新するようアクティブに通知できます

関連する推奨事項:「

html ビデオ チュートリアル

以上がhtml5にはどのような保存方法があるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。