20180724追記
動いた
Clear-Site-Dataヘッダでブラウザに記憶されているデータを消す - ASnoKaze blog
背景
Webサイトは様々な理由で、ユーザのローカルにデータを保存します
- Cookieといった状態を管理するための情報
- Cacheといった、Webサイトのパフォーマンスを改善するためのキャッシュデータ
- DOM Storageといった、様々な用途で保存されるデータ
Webサイトの開発者はそらのデータを扱う上で気をつけなければならないことがあります。
- データを暗号化する。改竄されてい問題ないようにする
- 必要がなくなったらデータを消去する
これらのデータを削除することは現在容易ではない場合があります。
Cookieは、HttpOnly属性が付いている場合は、クライアントが持ってるCookieを全て覚えておく必要があります。キャッシュについてはまだ難しい。
これらのデータを削除するために、W3CでClear Site Dataという仕組みの提案がされています。
http://www.w3.org/TR/clear-site-data/
Clear Site Data
Clear-Site-Dataヘッダ
Cler Site Dataでは、新しくClear-Site-DataというHTTPヘッダを定義しています。
Clear-Site-Data: domStorage cookies executionContexts cache; includeSubdomains
typeはそれぞれ、この4っつを個別に指定できます。
- domStorage
- cookies
- executionContexts
- cache
Clear-Site-Data: *
もしくは * を指定できます。
もちろん、このヘッダは証明書が有効なHTTPS通信でしか使えない。
JavaScript API
JavaScriptでも同様に、ローカルデータを消せるAPI
navigator.storage.clear({ types: [ "cache" ], includeSubdomains: true });