Browse Source

fix serviceWorker cache

Jesse 1 year ago
parent
commit
0dcbfd746e
1 changed files with 13 additions and 7 deletions
  1. 13 7
      public/serviceWorker.js

+ 13 - 7
public/serviceWorker.js

@@ -1,15 +1,21 @@
 const CHATGPT_NEXT_WEB_CACHE = "chatgpt-next-web-cache";
 
+importScripts('https://storage.googleapis.com/workbox-cdn/releases/7.0.0/workbox-sw.js');
+
 self.addEventListener("activate", function (event) {
   console.log("ServiceWorker activated.");
 });
 
-self.addEventListener("install", function (event) {
-  event.waitUntil(
-    caches.open(CHATGPT_NEXT_WEB_CACHE).then(function (cache) {
-      return cache.addAll([]);
-    }),
-  );
+workbox.core.clientsClaim();
+self.addEventListener("message", (event) => {
+  if (event.data && event.data.type === "SKIP_WAITING") {
+    self.skipWaiting();
+  }
 });
 
-self.addEventListener("fetch", (e) => {});
+workbox.routing.registerRoute(
+  new RegExp('/*'),
+  new workbox.strategies.StaleWhileRevalidate({
+    cacheName: CHATGPT_NEXT_WEB_CACHE
+  })
+);