Как запретить работнику службы Angular кэшировать файл PDF?

У меня есть приложение Angular 7 с настройкой сервис-воркера. Но я только заметил, что когда я пытаюсь открыть ссылку PDF на своем сайте, они не работают.

Но если я открою консоль разработчика> приложение и нажму «Обход для сети», он будет работать нормально, также, если я отключу сервис-воркера, он тоже будет работать нормально.

Вот мой файл ngsw-config.json.

{
  "index": "/index.html",
  "assetGroups": [
    {
      "name": "app-shell",
      "installMode": "prefetch",
      "updateMode": "prefetch",
      "resources": {
        "files": [
          "/index.html",
          "/manifest.json",
          "/ngsw-worker.js",
          "/scripts*.js",
          "/main*.js",
          "/polyfills*.js",
          "/runtime*.js",
          "/common*.js",
          "/*.css"
        ]
      }
    }, {
      "name": "assets-lazy",
      "installMode": "lazy",
      "updateMode": "lazy",
      "resources": {
        "files": [
          "/images/logo_red_white.svg",
          "/logo.png",
          "/assets/icons/**",
          "/*.js"
        ]
      }
    }
  ]
}

Когда я смотрю на вкладку сети в инструменте разработчика, я вижу, что PDF-файл загружается из сервис-воркера.

Каким образом я могу сказать сервисному работнику, чтобы он игнорировал файлы PDF?

Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
0
0
1 962
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Почему бы вам не кэшировать файлы PDF. Таким образом, сервис-воркер не будет вести себя неправильно с общедоступными файлами, и вы сможете без проблем использовать PDF-файлы на своей странице. Для кеширования файлов PDF используйте тот же метод, что и для хранения или кеширования изображений.

Для получения дополнительной информации вы можете обратиться к этой ссылке Google.

https://developers.google.com/web/ilt/pwa/lab-caching-files-with-service-worker

Я позволю работнику службы кэшировать PDF-файл и опробовать его.

Ennio 28.12.2018 15:31

Спасибо за ссылку. Я добавил PDF в сервис-воркер, и он работает нормально.

Ennio 28.12.2018 15:49

Другие вопросы по теме