Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 服务人员缓存是否在站点范围内工作,即使不使用sw.js加载HTML?_Javascript_Service Worker - Fatal编程技术网

Javascript 服务人员缓存是否在站点范围内工作,即使不使用sw.js加载HTML?

Javascript 服务人员缓存是否在站点范围内工作,即使不使用sw.js加载HTML?,javascript,service-worker,Javascript,Service Worker,服务工作者缓存是否在站点范围内工作,而不管用户是否实际位于加载了sw.js的HTML页面上 例如: 假设 用户浏览器上的注册服务工作人员 使用由sw控制的本地缓存 本地缓存中缓存了一些文件,包括html、js、css和一些jpg 如果用户要直接访问其浏览器中的任何JPG或CSS文件,浏览器是否通过服务人员运行请求和/或自行识别这些本地文件,从而呈现本地缓存的文件?一旦服务人员激活,其获取处理程序将在出现以下情况时触发: 指向服务工作者作用域下的URL的导航 服务工作者作用域下的客户端页面对

服务工作者缓存是否在站点范围内工作,而不管用户是否实际位于加载了sw.js的HTML页面上

例如: 假设

  • 用户浏览器上的注册服务工作人员
  • 使用由sw控制的本地缓存
  • 本地缓存中缓存了一些文件,包括html、js、css和一些jpg

如果用户要直接访问其浏览器中的任何JPG或CSS文件,浏览器是否通过服务人员运行请求和/或自行识别这些本地文件,从而呈现本地缓存的文件?

一旦服务人员激活,其
获取
处理程序将在出现以下情况时触发:

  • 指向服务工作者作用域下的URL的导航
  • 服务工作者作用域下的客户端页面对URL的请求。(例如请求图像或样式表等)
如果要直接导航到服务人员作用域下存在的URL,即使该URL与HTML文档不对应,服务人员的
fetch
处理程序也有机会作出响应

如果您的服务人员有一个
fetch
处理程序,该处理程序总是使用给定URL的缓存版本进行响应,那么是的,该响应将用于完成导航,即使资产是图像或样式表或其他内容

您可以自己进行测试:

  • 访问这样的站点:安装服务工作者,缓存大量资源,并使用
    fetch
    处理程序通过缓存响应预缓存资源的请求
  • 离线
  • 导航到预先设置好的URL,如
  • 您将看到预缓存资源用于响应导航请求