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





Почему бы вам не кэшировать файлы PDF. Таким образом, сервис-воркер не будет вести себя неправильно с общедоступными файлами, и вы сможете без проблем использовать PDF-файлы на своей странице. Для кеширования файлов PDF используйте тот же метод, что и для хранения или кеширования изображений.
Для получения дополнительной информации вы можете обратиться к этой ссылке Google.
https://developers.google.com/web/ilt/pwa/lab-caching-files-with-service-worker
Спасибо за ссылку. Я добавил PDF в сервис-воркер, и он работает нормально.
Я позволю работнику службы кэшировать PDF-файл и опробовать его.