service-worker - ServiceWorker 不会拦截来自动态加载页面的脚本请求
问题描述
我已经使用 .net 核心 Web 应用程序实现了服务工作者。应用程序是单页并通过 jquery 加载功能加载其他页面。主页具有缓存,其中包含应用程序完全脱机运行所需的所有资源。到目前为止一切顺利,工作人员的范围设置为 / 级别。一切正常,直到我注意到动态加载的页面或部分视图上的脚本不由工作人员提供服务,尽管它们在缓存中。服务人员确实在主页上为他们服务。
这给我的印象是,无论服务工作者的范围是什么,它都不会在动态加载的部分页面上提供缓存,而只会在它被激活的页面上提供缓存。
如何在那些动态加载的部分视图上使主页服务缓存?Service Worker 如何决定从缓存中提供资源的位置?如果范围设置为 root 那么为什么不提供脚本呢?
我已经阅读了很多关于它的文档,但我没有在哪里读到无论服务工作者的范围是什么,它只会在它被激活的页面上提供服务,无论你是否在没有真正页面导航的情况下动态加载页面。
编辑:
找到了。可能它会节省一些时间和头痛。部分页面加载是通过jquery加载功能,需要同步解析html和脚本,如果请求是同步的,则fetch不会拦截。现在需要找到解决方法。
解决方案
推荐阅读
- sql-server - SQL Server:性能问题:WHERE 子句中的 OR 语句替换
- mysql - 为什么 MYSQL 数据目录更改失败,sql 在默认位置创建自己的实例
- mingw - 使用 Bazel 和 Mingw 编译 gflags 库
- java - 如何在 PL/SQL 中的 Map 中返回结果?
- python - 输出 ==> elif mid_number
cards= [20,19,18,17,16,15,13, 11, 10, 7, 4, 3, 1, 0], query=1 def checker(cards,query
- sas - 在 Sas Miner 中修改变量
- c++ - 如何在另一个 Qt 线程上运行它?
- reactjs - Ref 动态反应
- python - 删除 NaN 和列值更改之间的行
- syntax-error - 在 OCaml 中编写函数的问题