SERVICE WORKER


service workers

  • app.js
  • sw.js
  • chrome://net-internals/#events
  • chrome://inspect/#service-workers

一般来说,如果看到 provisional headers are shown 这个提示,说明这个请求并没有发送出去

  • 请求被某些扩展如 Adblock 拦截了,请求被浏览器插件拦截。解决方案:用 chrome://net-internals 来帮助你查找被屏蔽的请求以及可能的原因。(本人发现现在这个用不了了)
  • 请求被墙了
  • 走本地缓存或者 dataurl 的请求。强缓存 from disk cache 或者 from memory cache,此时也不会显示
  • 服务器出错或者超时,没有真正的返回。client 发送请求后,由于各种原因,比如网络延迟,server 端逻辑错误,导致 client 端长时间未收到响应。解决方案:改正占用很长时间的 server 端程序。
  • 跨域,请求被浏览器拦截
  • 其他原因

img crossorigin

这个属性有两个值可选,需要 server 端在 response 的 header 中带上 Access-Control-Allow-Credentials 属性。

  • anonymous:如果使用这个值的话就会在请求中的 header 中的带上 Origin 属性,但请求不会带上 cookie 和其他的一些认证信息。
  • use-credentials:这个就同时会在跨域请求中带上 cookie 和其他的一些认证信息。

cache-control

  • max-age>0 时 直接从游览器缓存中 提取
  • max-age<=0 时 向 server 发送 http 请求确认 ,该资源是否有修改 有的话 返回 200 ,无的话 返回 304.

Author: yanstars
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source yanstars !
  TOC