4

sw-toolbox から Workbox に切り替えていますが、setDefaultHandler()の使用方法がわかりません。

私が試してみると(上記のリンクのドキュメントに記載されているように):

workboxSW.router.setDefaultHandler({
    handler: new workbox.runtimeCaching.CacheFirst()
});

runtimeCaching が定義されていないというエラーが表示されます。

Uncaught ReferenceError: ルーターが定義されていません

では、どのように使用し、sw-toolbox を構成するのと同様の方法で構成するのですか?

toolbox.options.cache = {
    name: "default",
    maxEntries: 128,
    maxAgeSeconds: (60*60*24), // 24hrs
};
toolbox.router.default = toolbox.cacheFirst;

私はこのようなことができるようにしたいと思います:

workboxSW.router.setDefaultHandler({
    handler: workboxSW.strategies.cacheFirst({
        cacheName: 'default',
        cacheExpiration: {
            maxEntries: 128,
        },
        cacheableResponse: {statuses: [0, 200]},
    })
});

..これはコンパイルエラーをスローしませんが、使用すると次のようになります。

Uncaught (in promise) TypeError: リクエストメソッド 'POST' はサポートされていません

..そして「デフォルト」の私のキャッシュストレージは空のままです..?

4

2 に答える 2