ホームページ >ウェブフロントエンド >htmlチュートリアル >ローカル ストレージ Cookie、localStorage、sessionStorage_html/css_WEB-ITnose の長所と短所について説明します。
Cookie の欠点について話します
Cookie はクライアント データの永続化に便利ですが、サーバー ストレージのワークロードを共有します負担はかかりますが、それでも多くの制限があります。 最初: 特定のドメイン名ごとに最大 20 個の Cookie が生成されます
IE6 以前のバージョンでは、最大 20 個の Cookie が生成されます。 【IE6以前ではCookieは20個まで】
IE7以降のバージョンではついに50個のCookieを保持できるようになりました。 【IE7 以降のバージョンと最後のバージョンでは 50 個の Cookie が含まれる可能性があります 】
Firefox は最大 50 個の Cookie 【Firefox は最大 50 個の Cookie 】
chrome および[Chrome と Safari はハード制限を行いません。IE と Opera は最も最近使用されていない Cookie を削除しますが、Firefox はランダムに Cookie を削除します。]
IE と Opera 最も最近使用されていない Cookieはクリアされ、Firefox は Cookie をランダムにクリアします。
互換性のため、Cookie の最大サイズは約 4096 バイトです。通常は 4095 バイトを超えることはできません。
IE は、IE5.0 からサポートされている userdata と呼ばれるユーザー データを永続化できるストレージを提供します。各データは最大 128K、各ドメイン名は最大 1M まで可能です。この永続データはキャッシュに配置され、キャッシュがクリアされない場合は常に存在します。
IE では、UserData と呼ばれる永続的なユーザー データを保存する方法が提供されます。IE 5.0 以降では、各ドメインで最大 128K のデータがキャッシュに保存されます。
高い拡張性と可用性【高い拡張性と可用性】
合格 良好なプログラミング、 Cookie に保存されるセッション オブジェクトのサイズを制御します。 【優れたプログラミング、オブジェクトに保存されるセッション Cookie のサイズを制御します。】
暗号化と安全な送信技術 [SSL] により、Cookie が解読される可能性が低くなります。 【暗号化と安全な送信技術 (SSL) により、Cookie が解読される可能性が低くなります。 】
Cookie には機密性のないデータのみが保存されるため、たとえ盗まれても重大な損失は発生しません。 。 【Cookieには非機密データのみが保存され、たとえ盗まれても重大な損失は発生しません。】
Cookieが永久に有効にならないように、Cookieの有効期間を制御します。泥棒が期限切れの Cookie を入手した可能性があります。 【Cookieの有効期限を制御するため、常に有効であるとは限りません。】
Cookie の数と長さの制限。各ドメインには最大 20 個の Cookie のみを含めることができ、各 Cookie の長さは 4KB を超えることはできません。4KB を超えると切り捨てられます。 【Cookie の数と長さを制限します。各ドメインには最大 20 個の Cookie を含めることができます。各 Cookie の長さは 4KB を超えることはできません。それ以外の場合は切り捨てられます。】
セキュリティの問題。 Cookie が誰かに傍受されると、その人はすべてのセッション情報を取得できます。暗号化も役に立ちません。傍受者は Cookie の意味を知る必要がないため、Cookie をそのまま転送するだけで目的を達成できます。 【セキュリティ上の問題。たとえ暗号化が役に立たなかったとしても、Cookie の転送は目的を達成できる限り、Cookie の意味を知る必要がないため、その人はすべてのセッション情報を取得できます。 .]
一部の状態はクライアントに保存できません。たとえば、フォームの重複送信を防ぐには、サーバー側にカウンターを保存する必要があります。このカウンタをクライアント側に保存しても、効果はありません。 [一部の状態はクライアントに保存できません。たとえば、送信フォームの重複を防ぐために、サーバー側にカウンターを保存する必要があります。このカウンターをクライアントに保存すると、何も達成されません。 ]
ブラウザのローカル ストレージ
ブラウザの上位バージョンでは、js は sessionStorage と globalStorage を提供します。 HTML5 では、globalStorage の代わりに localStorage が提供されます。
ブラウザの以降のバージョンでは、JS は sessionStorage と globalStorage を提供します。HTML5 では、localStorage で globalStorage を置き換えます。
html5 の Web ストレージには、sessionStorage と localStorage という 2 つのストレージ メソッドが含まれています。
html5 Web ストレージには、sessionStorage と localStorage という 2 つのストレージ メソッドが含まれています。
sessionStorage は、セッション [セッション] 内のデータをローカルに保存するために使用されます。これらのデータは、同じページにのみ保存できます。セッションが終了するとデータは破棄されます。したがって、sessionStorage は永続的なローカル ストレージではなく、セッション レベルのストレージにすぎません。
sessionStorage データはセッション (セッション) に対してローカルに保存され、そのデータはページの同じセッション内でのみデータにアクセスされ、セッションの終了時にも破棄されます。したがって、sessionStorage は永続的なローカル ストレージではありません。
データがアクティブに削除されない限り、localStorage は永続的なローカル ストレージとして使用されます。
永続的なローカル ストレージには localStorage を使用します。ただし、データを削除する主導権がないか、データが古くなることはありません。
Web ストレージと Cookie の違い
Web ストレージの概念は Cookie と似ていますが、異なる点は、より大容量のストレージ用に設計されているという点です。 Cookie のサイズは制限されており、新しいページをリクエストするたびに Cookie が送信されるため、帯域幅が浪費されます。また、Cookie はスコープを指定する必要があり、ドメイン間で呼び出すことはできません。
Web ストレージの概念と Cookie は似ていますが、Cookie のサイズは制限されており、過去に新しいページをリクエストするたびに Cookie が送信されるため、仮想的に送信されます。帯域幅を無駄にしている場合は、クロスドメイン呼び出しではなく、別の Cookie もスコープを指定する必要があります。
さらに、フロントエンド開発者自身が必要な Cookie とは異なり、Web Storage には setItem、getItem、removeItem、clear などのメソッドがあります。 setCookie、getCookieをカプセル化します。
さらに、Web Storage には setItem、getItem、removeItem、clear メソッドがあり、Cookie フロントエンド開発者は独自のパッケージ setCookie、getCookie を必要とします。
しかし、Cookie も不可欠です : 役割Cookie の役割はサーバーと対話することであり、HTTP 仕様の一部として存在します。一方、Web Storage はデータをローカルに「保存」するためにのみ作成されます
しかし、Cookie は必須ではありません。Cookie の役割は、サーバーと対話することです。仕様の HTTP 部分としてのサーバーが存在し、Web ストレージは単純に生データをローカルに「保存」します
ブラウザのサポート サポートされていない IE7 以下を除き、他の標準ブラウザは完全にサポートされています (つまり、 FF は Web サーバーで実行する必要があります)。たとえば、IE7 と IE6 の userData は実際には JavaScript のローカル ストレージのソリューションであることに言及する価値があります。単純なコードのカプセル化により、すべてのブラウザを統合して Web ストレージをサポートできます。
IE7 以下以外のブラウザのサポートはサポートされていません。他の標準ブラウザは完全にサポートしています (IE と FF では Web サーバーを実行する必要があります)。IE 7 などの IE は常に優れた機能を備えていることに言及する価値があります。 IE6 の userData は、簡単なコードで Web ストレージをサポートするすべてのブラウザに統合できるパッケージです。など。
localStorage と sessionStorage は同じ操作メソッドを持ちます。たとえば、setItem、getItem、removeItem などです。
Cookie とセッションの違い: