Как сделать так, чтобы сервис Angular работал для кеширования PDF файлов? - PullRequest
0 голосов
/ 28 декабря 2018

У меня есть приложение 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-файлы?

1 Ответ

0 голосов
/ 28 декабря 2018

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

Более подробно вы можете обратиться к этой ссылке Google.

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

...