Clear-Site-Data
Clear-Site-Data
ヘッダーは、リクエストしているウェブサイトに関連付けられた閲覧用データ (クッキー、ストレージ、キャッシュ) を消去します。ウェブ開発者がそのオリジンのためにブラウザーがローカルに保存したデータをより制御できます。
構文
Clear-Site-Data
ヘッダーは、1 つまたは複数のディレクティブを受け付けます。すべての種類のデータを消去する場合は、ワイルドカードのディレクティブ ("*"
) を使用することができます。
// 単一のディレクティブ Clear-Site-Data: "cache" // 複数のディレクティブ (カンマ区切り) Clear-Site-Data: "cache", "cookies" // ワイルドカード Clear-Site-Data: "*"
ディレクティブ
メモ: すべてのディレクティブは引用符で囲まれた文字列の文法 rに従わなければなりません。二重引用符を含まないディレクティブは無効です。
"cache"
-
サーバーが、レスポンス URL のオリジンに関するローカルにキャッシュされたデータ (つまり、ブラウザーキャッシュ、HTTP キャッシュを参照) の消去を望んでいることを示します。ブラウザーによっては、予備レンダリングページ、スクリプトキャッシュ、 WebGL シェーダーキャッシュ、アドレスバーのサジェスト等のようなものも消去します。
-
サーバーが、レスポンス URL のオリジンに関するすべてのクッキーの消去を望んでいることを示します。これは登録されたドメインにサブドメインを含め影響します。ですから、
https://example.com
と同様にhttps://stage.example.com
のクッキーも消去されます。 "storage"
-
サーバーが、レスポンス URL のオリジンに関するすべての DOM ストレージの消去を望んでいることを示します。これは以下のようなストレージ機構を含みます。
- localStorage (
localStorage.clear
を実行) - sessionStorage (
sessionStorage.clear
を実行) - IndexedDB (それぞれのデータベースに
IDBFactory.deleteDatabase
を実行) - サービスワーカーの登録 (登録されたそれぞれのサービスワーカーに対して、
ServiceWorkerRegistration.unregister
を実行) - AppCache
- WebSQL データベース
- FileSystem API のデータ
- プラグインのデータ (
NPP_ClearSiteData
によって消去)
- localStorage (
"executionContexts"
-
サーバーが、レスポンスのオリジンに関するすべての閲覧コンテキストの再読み込みを望んでいることを示します。 (
Location.reload
) "*"
(ワイルドカード)-
サーバーが、レスポンスのオリジンに関するすべての種類のデータの消去を望んでいることを示します。このヘッダーの将来のバージョンでデータの種類が追加された場合、それも消去します。
例
ウェブサイトのログアウト
ユーザーがウェブサイトやサービスからログアウトした場合、ローカルに保存されているデータを削除したい場合があります。サイトからのログアウトが正常に完了したことを確認するページ (https://example.com/logout
など)を送信する際に Clear-Site-Data
ヘッダーを追加することで、これを実現することができます。
Clear-Site-Data: "cache", "cookies", "storage", "executionContexts"
クッキーの消去
以下のヘッダーが https://example.com/clear-cookies
のレスポンスで配信された場合、同じドメイン https://example.com
及びあらゆるサブドメイン (https://stage.example.com
など) が消去されます。
Clear-Site-Data: "cookies"
仕様書
仕様書 | 状態 | 備考 |
---|---|---|
Clear Site Data | Working Draft | 初回定義 |
ブラウザーの互換性
BCD tables only load in the browser