Изображения из хранилища Firebase не кэшируются в Workbox - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь, чтобы мой работник сервиса рабочего ящика кэшировал изображения, хранящиеся в хранилище Firebase, без особого успеха ... Странно то, что некоторые изображения на самом деле правильно кэшируются, а другие нет.

Вот моя рабочая конфигурация:

  workbox.routing.registerRoute(
    new RegExp('https://{MYPROJET}.googleapis.com/v0/b/{MYPROJET}.appspot.com/(.*)'),
    new workbox.strategies.CacheFirst({
      cacheName: 'storage',
      plugins: [
        new workbox.expiration.Plugin({
          maxEntries: 1000,
          maxAgeSeconds: 30 * 60, // 30 mins
        }),
      ],
    })
  );

В инструментах Chrome dev я вижу, что некоторые изображения правильно кэшируются, но некоторые другие имеют часть своего пути в виде файлов json, ниже приведен скриншот с 3 первые записи, показывающие, что изображение неправильно кэшировано как json файлы, а последняя правильно кэширована.

enter image description here

Когда я копаюсь в каждой кэшированной записи, я могу обратите внимание, что неправильно кэшированные были кэшированы без строки запроса, что может быть проблемой.

Я попытался установить заголовок cacheControl при загрузке изображений в хранилище без особого успеха:

spaceref.put(pic, { cacheControl: 'public, max-age=3600'})

...