Chrome/Chromium Edge Service Worker のキャッシュをクリアするにはどうすればよいですか?

Chrome/Chromium Edge Service Worker のキャッシュをクリアするにはどうすればよいですか?

これはないCache フォルダ。これは Service Worker のキャッシュなので、パスは になりますAppData\Local\Microsoft\Edge\User Data\Default\Service Worker

最近、ハード ドライブがほぼいっぱいになっていることに気づいたので、クリーンアップしたいと思っています。キャッシュ フォルダーは許容範囲 (200 MB) ですが、サービス ワーカー フォルダーのキャッシュが非常に大きい (> 1 GB) ことに気付きました。すべてのサービス ワーカーの登録を解除してみましたが、キャッシュ フォルダーはまだ残っています。

Windows エクスプローラーから削除するだけで安全でしょうか?

Ps: 開発者として、登録されているサービス ワーカーの数に驚いています。そのほとんどはトラッカーであり、以前に削除すべきだった無駄なものです。


読みましたこの記事しかし、私の場合は以下の理由でうまくいきませんでした:

  • クッキーも削除したくありません。クッキーは必要なのです。残念ながら、Chrome/Edge ではそれが 1 つのオプションにまとめられています。

  • 各 Web サイトにアクセスして、個々の Service Worker キャッシュを削除することはできません。

答え1

私自身の Service Worker キャッシュは次のフォルダーにあります:
C:\Users\USER-NAME\AppData\Local\Microsoft\Edge\User Data\Default\Service Worker\CacheStorage\3cedfb74d44f2e84198d23075aef16c34a668ceb

edge://settings/clearBrowserData 「キャッシュされた画像とファイル」オプションを使用してクリーンアップを試みましたが、Service Worker キャッシュには影響しませんでした。

そこで、エクスプローラーで上記のフォルダーに入り、その内容をすべて削除しましたが、フォルダー自体はそのまま残しました。

その後、Microsoft Edge を起動しましたが、問題なく起動しました。また、フォルダーに新しいコンテンツが再入力されました。

したがって、私の答えは、「はい、エクスプローラーから削除できます」です。

安全性が心配な場合は、まずコンテンツを一時フォルダーに移動して Microsoft Edge を実行してください。すべてがうまくいけば、一時フォルダーを削除できます。

注: Google Chrome もまったく同じように動作します。そのキャッシュは次の場所にあります:
C:\Users\USER-NAME\AppData\Local\Google\Chrome\User Data\Default\Service Worker

答え2

@harrymc がキャッシュを総当たりでフラッシュする方法について回答しています。ここでは、Web サイトごとに実行して、何が起こっているかをもう少し理解する方法を示します。

[chrome/edge/vivaldi/...]://serviceworker-internals/アドレスバーに入力すると、登録されているすべてのサービスワーカーが表示されます。ただし、そのページから登録を解除してもキャッシュはクリアされません。love2devのこの包括的な記事ノート。

代わりに、たとえばyoutube.comサービスワーカーを登録している場合は、その Web サイトに移動して開発者コンソールを開きます。「アプリケーション」タブと「ストレージ」項目を開きます。

開発者コンソール - アプリケーション - ストレージ

ここでは、サービス ワーカーが占有するストレージの量が表示され、Cookie のみを保持するなど、その Web サイトのどのデータをクリアするかを選択できます。

再度そのサイトに移動するとすぐにサービス ワーカーが再起動することに注意してください。

システムにサービスワーカーをインストールできるアプリケーションを選択する場合は、この記事に記載されている手順に従ってくださいuBlock プラグインを使用します。

勝手な推測ですが、5GB の ServiceWorker ストレージは、オフライン コンテンツが有効になっている Web メール クライアントに相当するでしょう。ServiceWorker はもともと、常にオンラインではないモバイル デバイス用に考案されたものであり、そのため一部の Web アプリケーション データをローカル システムにキャッシュすることを理解することが重要です。また、ServiceWorker は非アクティブな Web アプリケーションへのプッシュ メッセージを受信し、そのアプリケーションを起動できます。Gmail は典型的な例です。モバイルでは、オフラインでもメールの読み書きができ、オンラインになるとすぐに同期されます。また、電話の再起動後に Gmail アプリがアクティブでなくても、ServiceWorker は受信トレイに新しいメールがあることを知らせるプッシュ メッセージを受信します。

そのため、常にインターネットに接続されている PC では、一部の Web サイトでのエクスペリエンスを高速化する場合を除き、サービスワーカーは実際には必要ありません。ただし、最近では、サービスワーカーをブロックすると一部の Web サイトが正しく動作しなくなる可能性があります (ただし、これは悪いコーディング方法だと思います)。

より包括的な理解のために、リンクされた2つの記事を読んでください。また、Google の Service Workers 入門何が起こっているのか、もう少し明らかにすることができます。

答え3

そのフォルダーをクリアするより安全な解決策: Chrome/Edge/Vivaldi で、「設定」->「プライバシーとセキュリティ」->「Cookie とその他のサイトデータ」->「すべての Cookie とサイトデータを表示」に移動すると、コンピューターにデータが保存されているすべてのサイトのリストが表示されます。Cookie のみのサイトもありますが、「ローカル ストレージ」または「データベース ストレージ」があるサイトもあります。

各項目ごとに、使用されているストレージ容量を確認することができます。すべてを削除するには、「すべて削除」を使用しますが、Cookie などはすべて削除されることに注意してください。

答え4

追加するには現在の回答キャッシュをクリアしても安全だということはわかっていますが、定期的にキャッシュをクリーンアップするのはうんざりです。キャッシュはすぐに増えてしまいます。私は Chrome 拡張機能を使用して、すべての Service Workers をブロックしています。一部の Web サイトは実際に Service Workers を必要としており、ユーザーはそれを信頼しているため、ホワイトリスト機能が必要です。トラッカーによって多くの無意味な Service Workers もインストールされるため、これには別のプラスの影響もあります。

Google または Chrome ウェブストアで検索するだけですService Worker blocker(そのため、私は 1 つも宣伝しません)。

また、コメントから追加すると、次のパスでキャッシュ フォルダーにすばやくアクセスできます。%localappdata%\Microsoft\Edge\User Data\Default\Service Worker\CacheStorage

関連情報